189 8069 5689

linux终端命令带短横,linux短横线

linux的命令带的选项,有些是一个杠-,有些是两个杠--,这些有没有什么规律的?

一、find 命令格式

成都创新互联公司是专业的永新网站建设公司,永新接单;提供成都网站制作、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行永新网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

1、find命令的一般形式为;

find pathname -options [-print -exec -ok ...]

2、find命令的参数;

pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。

-print: find命令将匹配的文件输出到标准输出。

-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。

-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

3、find命令选项

-name

按照文件名查找文件。

-perm

按照文件权限来查找文件。

-prune

使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。

-user

按照文件属主来查找文件。

-group

按照文件所属的组来查找文件。

-mtime -n n

按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内, n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项,但它们都和-m time选项。

-nogroup

查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。

-nouser

查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。

-newer file1 ! file2

查找更改时间比文件file1新但比文件file2旧的文件。

-type

查找某一类型的文件,诸如:

b - 块设备文件。

d - 目录。

c - 字符设备文件。

p - 管道文件。

l - 符号链接文件。

f - 普通文件。

-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计。

-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。

-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。

-mount:在查找文件时不跨越文件系统mount点。

-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。

-cpio:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。

另外,下面三个的区别:

-amin n

查找系统中最后N分钟访问的文件

-atime n

查找系统中最后n*24小时访问的文件

-cmin n

查找系统中最后N分钟被改变文件状态的文件

-ctime n

查找系统中最后n*24小时被改变文件状态的文件

-mmin n

查找系统中最后N分钟被改变文件数据的文件

-mtime n

查找系统中最后n*24小时被改变文件数据的文件

4、使用exec或ok来执行shell命令

使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便的

在有些操作系统中只允许-exec选项执行诸如l s或ls -l这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。

exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{ },一个空格和一个\,最后是一个分号。为了使用exec选项,必须要同时使用print选项。如果验证一下find命令,会发现该命令只输出从当前路径起的相对路径及文件名。

例如:为了用ls -l命令列出所匹配到的文件,可以把ls -l命令放在find命令的-exec选项中

# find . -type f -exec ls -l { } \;

-rw-r--r-- 1 root root 34928 2003-02-25 ./conf/httpd.conf

-rw-r--r-- 1 root root 12959 2003-02-25 ./conf/magic

-rw-r--r-- 1 root root 180 2003-02-25 ./conf.d/README

上面的例子中,find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用ls -l命令将它们列出。

在/logs目录中查找更改时间在5日以前的文件并删除它们:

$ find logs -type f -mtime 5 -exec rm { } \;

记住:在shell中用任何方式删除文件之前,应当先查看相应的文件,一定要小心!当使用诸如mv或rm命令时,可以使用-exec选项的安全模式。它将在对每个匹配到的文件进行操作之前提示你。

在下面的例子中, find命令在当前目录中查找所有文件名以.LOG结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示。

$ find . -name "*.conf" -mtime 5 -ok rm { } \;

linux脚本中两个短横--是注释的意思吗?如--文件系统

linux注释是#吧 不同软件使用的注释符号不一样

-- 一般是运行命令使用的参数控制符号吧 比如安装mysql源码的时候会 ./install --prefix=/usr/local/ 指定安装软件的目录

2 Linux终端命令

职场中,大部分都是通过 SSH客户端 远程操作,实现磁盘读取,文件读取,目录操作,进程管理等等

打开终端3种方式,收藏夹黑色屏幕图标点击,右键打开终端,Ctrl+Alt+t组合键

command  [-options] [parameters]  

command即终端命令,options为选项一般前面有横杠,后面是参数,选项和参数有中括号表示可选项

man command (man表示手册缩写,查看命令帮助文档)出现文档,按回车下滚一行,按空格(或f)下翻一页,按b上翻一页,输入横杠加上对应的option可实现对应部分高亮

command --help也可以实现帮助文档,页面和上面不太一样,部分还出现了中文

pwd 命令 显示当前路径

tree [path] 命令(默认没有,需要安装,sudo apt install tree)可以将你当前(或指定)路径下的文件以树状遍历(所有文件,递归)显示出来

ls 命令 以列表显示当前目录文件,(不再深层挖掘)ls显示出来白色是文件,蓝色是文件夹,绿色是可执行文件,红色一般是压缩包

ls -a 显示所有的文件包括隐藏文件,显示结果以. 点开头的就是隐藏文件

ls -l 用较长方式显示文件 

前面10个字母(分成第一个和后9个,第一个横杠表示一个文件,d表示一个目录,l表示是个链接(类似快捷方式),后九个,rwx表示跟读写等操作有关,后面讲),硬链接数,文件所属用户(第一个demo),文件所属组(第二个demo),文件大小(B为单位),最后修改时间,文件

ls -h以人性化显示文件(一般和-l一起),可看出加了-h后,文件显示的单位方便阅读

cd 可以跟相对路径和绝对路径,路径大小写敏感

当前路径用“.”表示,上级路径“..”

cd 什么都不加或者cd ~可以直接回家目录/home

cd /去根目录

cd -返回上次的目录

mkdir创建目录 

mkdir 目录名   不可以一次创建多级目录(文件夹不存在情况下如mkdir a/b/c,a,b都不存在情况下,创建不了)

如果我们就是想创建多级目录呢,使用递归创建目录,会把没有的目录创建出来

mkdir a/b/c -p

touch创建文件

touch +文件名(建议加后缀名),可以一次创建多个文件用空格隔开

touch a.txt

touch a.txt b.txt

gedit打开文件

gedit 文件相对路径或绝对路径,(如果未成功打开需要加上sudo gedit)

同上个命令可以同时打开多个,打开的编辑器编辑内容点击保存完成文件编辑

打开文件后终端进入等待状态

rm删除文件和文件夹

文件删除不能恢复

rm -i 文件       这种会出现是否提示,给自己个提醒机会(centos没有-i就有提示)

rm -f 文件   强制删除(不提示,和上个相反)

rm -r 目录   删除目录(多级递归删除)

cp拷贝文件和文件夹

cp a.txt b.txt 当前路径下的a.txt拷贝一个b.txt到当前路径,如果已经存在b.txt直接覆盖掉

加上-i模式可以给与提示(不是同名文件不会出现)

-f 强制复制不提示

-v 显示一行拷贝的过程

如果是复制文件夹要加上 -r 递归拷贝

-a 把文件或文件夹(是递归拷贝)的权限也一起复制过去

mv移动文件文件夹,重命名

mv 原路径 目标路径

如果存在同名文件,默认会覆盖,还是加-i提示,如果选择n,不会移动成功

-f 强制移动不提示

-v 显示移动过程

移动文件夹不用加-r(删除和拷贝不一样)

clear 清除终端显示内容(类似DOS cls)快捷键,Ctrl+L

实际效果只是往下滚动,当前输入为第一行,拖动滚动条还是能看见之前的内容= =

tab 自动补全(有时多个可能要再按下tab出现候选提示)

which 查看命令位置

光标↑↓ 查看翻查之前调用过的命令

Ctrl+C 终止程序运行

终端字体大小调整Ctrl Shift +(放大)

Ctrl - (缩小,注意无shift)

cal显示日历,当日高亮

cal -3显示当前月及上下月的日历(没有-别的数字)

cal -y 显示一年的日历

cal -j 日历显示是当年第几天

cal 年份4位数(获得年份日历)

date显示日期

date 加双引号字符串格式化显示,注意对应大小写

%F,%T同样实现类似效果,分别格式化日期和时间

history 获得所有的历史指令

history 数字 显示最近的数字条指令

如果我看到对应指令,然后根据指令编号,直接输入

! 指令编号     即可执行对应指令,这些历史指令都存在于家目录隐藏文件 .bash_history 中

cat 直接在命令行显示文件内容,和gedit不一样

-n 查看文件同时显示行号

-b 文件空行不编号,但是给空出位置,显示非空行编号

-s 两行以上的空行只显示一行(可以和前面的组合 -sb   )

同时打开多个文件效果

more

more 文件路径  

分屏查看,会显示已经显示部分的百分比,

按回车滚一行,

按空格  或  Ctrl+F或F向下翻一屏,

Ctrl+B或B回滚一屏

q退出

more +num 表示从第num行开始查看,文件默认第一行为1

-p 选项 清屏 置顶显示内容

-s 连续2行以上的空行显示一个空行

more 也可以加多个文件,显示不同文件有专门的分割,这是与cat的区别

请问一下linux命令行中那个长的横线怎么打出来?

其实就是两个减号。

Linux下有条不成文的规定:

参数里,凡是一个字母的缩写都是用一个减号起头;

凡是有整个单词的参数都是用两个减号起头。

你看到的是一条长线,那只是字体不同造成的显示效果不同罢了,

其实不论长线还是两个短线都是两个减号组成的。


名称栏目:linux终端命令带短横,linux短横线
网站路径:http://cdxtjz.cn/article/phppip.html

其他资讯