📄 166.html
字号:
使用方式:mkdir [-p] dirName<br>
说明:建立名称为dirName 之子目录。<br>
参数:-p 确保目录名称存在,不存在的就建一个。<br>
范例:<br>
在工作目录下,建立一个名为AAA 的子目录:<br>
mkdir AAA<br>
在工作目录下的BBB 目录中,建立一个名为Test 的子目录。若BBB 目录原本不存在,则建立一个。(注:本例若不加-p,且原本BBB目录不存在,则产生错误。)<br>
mkdir -p BBB/Test<br>
名称:more 使用权限:所有使用者使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..] 说明:类似cat ,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空格键(space)就往下一页显示,按b 键就会往回(back)一页显示,而且还有搜寻字符串的功能(与vi 相似),使用中的说明文件,请按h 。参数:-num 一次显示的行数-d 提示使用者,在画面下方显示[Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示[Press 'h' for instructions.] 而不是'哔' 声-l 取消遇见特殊字符^L(走纸字符)时会暂停的功能-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上) -p 不以卷动的方式显示每一页,而是先清除屏幕后再显示内容-c 跟-p 相似,不同的是先显示内容再清除其它旧资料-s 当遇到有连续两行以上的空白行,就代换为一行的空白行-u 不显示下引号(根据环境变量TERM 指定的terminal 而有所不同) +/ 在每个档案显示前搜寻该字符串(pattern),然后从该字符串之后开始显示+num 从第num 行开始显示fileNames 欲显示内容的档案,可为复数个数范例: more -s testfile 逐页显示testfile 之档案内容,如有连续两行以上空白行则以一行空白行显示。more +20 testfile 从第20 行开始显示testfile 之档案内容。<br>
名称:mv<br>
使用权限:所有使用者<br>
使用方式:<br>
<br>
mv [options] source dest mv [options] source... directory<br>
说明:将一个档案移至另一档案,或将数个档案移至另一目录。<br>
参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。<br>
范例:<br>
将档案aaa 更名为bbb :<br>
mv aaa bbb<br>
将所有的C语言程序移至Finished 子目录中:<br>
mv -i *.c<br>
名称:rm<br>
使用权限:所有使用者<br>
使用方式:rm [options] name...<br>
说明:删除档案及目录。<br>
参数:<br>
-i 删除前逐一询问确认。-f 即使原档案属性设为只读,亦直接删除,无需逐一确认。-r 将目录及以下之档案亦逐一删除。<br>
范例:<br>
删除所有C语言程序文件;删除前逐一询问确认:<br>
rm -i *.c<br>
将Finished 子目录及子目录中所有档案删除:<br>
rm -r Finished<br>
名称:rmdir<br>
使用权限:于目前目录有适当权限的所有使用者<br>
使用方式: rmdir [-p] dirName<br>
说明: 删除空的目录。<br>
参数: -p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。<br>
范例:<br>
将工作目录下,名为AAA 的子目录删除:<br>
rmdir AAA<br>
在工作目录下的BBB 目录中,删除名为Test 的子目录。若Test 删除后,BBB 目录成为空目录,则BBB 亦予删除。<br>
rmdir -p BBB/Test<br>
名称:split<br>
使用权限:所有使用者<br>
使用方式:split [OPTION] [INPUT [PREFIX]<br>
<br>
说明:<br>
将一个档案分割成数个。而从INPUT 分割输出成固定大小的档案,其档名依序为PREFIXaa, PREFIXab...;PREFIX 默认值为`x'。若没有INPUT 档或为`-',则从标准输入读进资料。<br>
选项:<br>
-b, --bytes=SIZE<br>
SIZE 值为每一输出档案的大小,单位为byte。<br>
-C, --line-bytes=SIZE<br>
每一输出档中,单行的最大byte 数。<br>
-l, --lines=NUMBER<br>
NUMBER 值为每一输出档的列数大小。<br>
-NUMBER<br>
与-l NUMBER 相同。<br>
--verbose<br>
于每个输出档被开启前,打印出侦错信息到标准错误输出。<br>
--help<br>
显示辅助信息然后离开。<br>
--version<br>
列出版本信息然后离开。<br>
SIZE 可加入单位: b 代表512, k 代表1K, m 代表1 Meg。<br>
范例:<br>
PostgresSQL 大型数据库备份与回存:<br>
因Postgres 允许表格大过你系统档案的最大容量,所以要将表格dump 到单一的档案可能会有问题,使用split 来进行档案分割。<br>
% pg_dump dbname | split -b 1m - filename.dump.<br>
重新加载<br>
% createdb dbname % cat filename.dump.* | pgsql dbname<br>
名称:touch<br>
使用权限:所有使用者<br>
使用方式: touch [-acfm] [-r reference-file] [--file=reference-file] [-t MMDDhhmm[CC]YY][.ss] [-d time] [--date=time] [--time={atime,access,use,mtime,modify}] [--no-create] [--help] [--version] file1 [file2 ...]<br>
<br>
说明: touch 指令改变档案的时间记录。ls -l 可以显示档案的时间记录。<br>
参数: a 改变档案的读取时间记录。m 改变档案的修改时间记录。c 假如目的档案不存在﹐不会建立新的档案。与--no-create 的效果一样。f 不使用﹐是为了与其它unix 系统的兼容性而保留。r 使用参考文件的时间记录﹐与--file 的效果一样。d 设定时间与日期﹐可以使用各种不同的格式。t 设定档案的时间记录﹐格式与date 指令相同。--no-create 不会建立新档案。--help 列出指令格式。--version 列出版本讯息。<br>
范例:<br>
最简单的使用方式﹐将档案的时候记录改为现在的时间。若档案不存在﹐系统会建立一个新的档案。<br>
touch file touch file1 file2<br>
将file 的时间记录改为5 月6 日18 点3 分﹐公元两千年。时间的格式可以参考date 指令﹐至少需输入MMDDHHmm ﹐就是月日时与分。<br>
touch -c -t 05061803 file touch -c -t 050618032000 file<br>
将file 的时间记录改变成与referencefile 一样。<br>
touch -r referencefile file<br>
将file 的时间记录改成5 月6 日18 点3 分﹐公元两千年。时间可以使用am, pm 或是24 小时的格式﹐日期可以使用其它格式如6 May 2000 。<br>
touch -d "6:03pm" file touch -d "05/06/2000" file touch -d "6:03pm 05/06/2000" file<br>
touch 也可以制造一个空档(0 byte),例如DHCP Server 所需要的/etc.dbcpd.leases,dhcpd必须要有这个档案才能运作正常。[root@/root]#touch /etc/dhcpd.leases [root@/root]#ls –l /etc/dhcpd.less -rw-r—r—l root root 0 Jul 3 05:50 /etc/dhcpd.leases<br>
名称: at<br>
使用权限: 所有使用者<br>
使用方式: at -V [-q queue] [-f file] [-mldbv] TIME<br>
说明: at 可以让使用者指定在TIME 这个特定时刻执行某个程序或指令,TIME 的格式是HH:MM其中的HH 为小时,MM 为分钟,甚至你也可以指定am, pm, midnight, noon, teatime(就是下午4 点钟)等口语词。<br>
<br>
如果想要指定超过一天内的时间,则可以用MMDDYY 或者MM/DD/YY 的格式,其中MM 是分钟,DD 是第几日,YY 是指年份。另外,使用者甚至也可以使用像是now + 时间间隔来弹性指定时间,其中的时间间隔可以是minutes, hours, days, weeks。<br>
另外,使用者也可指定today 或tomorrow 来表示今天或明天。当指定了时间并按下enter 之后,at 会进入交谈模式并要求输入指令或程序,当你输入完后按下ctrl+D 即可完成所有动作,至于执行的结果将会寄回你的帐号中。<br>
参数:<br>
-V : 印出版本编号-q : 使用指定的队列(Queue)来储存,at 的资料是存放在所谓的queue 中,使用者可以同时使用多个queue,而queue 的编号为a, b, c... z 以及A, B, ... Z 共52 个-m : 即使程序/指令执行完成后没有输出结果, 也要寄封信给使用者-f file : 读入预先写好的命令档。使用者不一定要使用交谈模式来输入,可以先将所有的指定先写入档案后再一次读入-l : 列出所有的指定(使用者也可以直接使用atq 而不用at -l) -d : 删除指定(使用者也可以直接使用atrm 而不用at -d) -v : 列出所有已经完成但尚未删除的指定<br>
例子:<br>
三天后的下午5 点钟执行/bin/ls :<br>
at 5pm + 3 days /bin/ls<br>
三个星期后的下午5 点钟执行/bin/ls :<br>
t 5pm + 2 weeks /bin/ls<br>
明天的17:20 执行/bin/date :<br>
at 17:20 tomorrow /bin/date<br>
1999 年的最后一天的最后一分钟印出the end of world !<br>
名称:cat 使用权限:所有使用者使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName 说明:把档案串连接后传到基本输出(屏幕或加> fileName 到另一个档案) 参数: -n 或--number 由1 开始对所有输出的行数编号-b 或--number-nonblank 和-n 相似,只不过对于空白行不编号-s 或--squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行-v 或--show-nonprinting 范例: cat -n textfile1 > textfile2 把textfile1 的档案内容加上行号后输入textfile2 这个档案里cat -b textfile1 textfile2 >> textfile3 把textfile1 和textfile2 的档案内容加上行号(空白行不加)之后将内容附加到textfile3 里。<br>
<br>
范例:<br>
把textfile1 的档案内容加上行号后输入textfile2这个档案里<br>
cat –n textfile1 > textfile2<br>
把textfile1 和textfile2 的档案内容加上行号(空白行不加)之后将内容附加到textfile3 里<br>
cat –b textfile1 textfile2 >>textfile3<br>
名称: crontab<br>
使用权限: 所有使用者<br>
使用方式:<br>
crontab [ -u user ] file<br>
crontab [ -u user ] { -l | -r | -e }<br>
说明:<br>
crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定user 的时程表,这个前提是你必须要有其权限(比如说是root)才能够指定他人的时程表。如果不使用-u user 的话,就是表示设定自己的时程表。<br>
餐数:<br>
-e : 执行文字编辑器来设定时程表,内定的文字编辑器是VI,如果你想用别的文字编辑器,则请先设定VISUAL 环境变量来指定使用那个文字编辑器(比如说setenv VISUAL joe) -r : 删除目前的时程表-l : 列出目前的时程表<br>
时程表的格式如下:<br>
f1 f2 f3 f4 f5 program<br>
其中f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。<br>
当f1 为* 时表示每分钟都要执行program,f2 为* 时表示每小时都要执行程序,其余类推当f1 为a-b 时表示从第a 分钟到第b 分钟这段时间内要执行,f2 为a-b 时表示从第a 到第b 小时都要执行,其余类推当f1 为*/n 时表示每n 分钟个时间间隔执行一次,f2 为*/n 表示每n 小时个时间间隔执行一次,其余类推当f1 为a, b, c,... 时表示第a, b, c,... 分钟要执行,f2 为a, b, c,... 时表示第a, b, c...个小时要执行,其余类推<br>
使用者也可以将所有的设定先存放在档案file 中,用crontab file 的方式来设定时程表。<br>
例子:<br>
每月每天每小时的第0 分钟执行一次/bin/ls :<br>
0 7 * * * /bin/ls<br>
在12 月内, 每天的早上6 点到12 点中,每隔20 分钟执行一次/usr/bin/backup :<br>
0 6-12/3 * 12 * /usr/bin/backup<br>
周一到周五每天下午5:00 寄一封信给alex@domain.name :<br>
<br>
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata<br>
每月每天的午夜0 点20 分, 2 点20 分, 4 点20 分....执行echo "haha"<br>
20 0-23/2 * * * echo "haha"<br>
注意:<br>
当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之后加上> /dev/null 2>&1 即可。<br>
名称: sleep<br>
使用权限: 所有使用者<br>
使用方式: sleep [--help] [--version] number[smhd]<br>
说明: sleep 可以用来将目前动作延迟一段时间<br>
参数说明:<br>
--help : 显示辅助讯息--version : 显示版本编号number : 时间长度,后面可接s、m、h 或d 其中s 为秒,m 为分钟,h 为小时,d 为日数<br>
例子:<br>
显示目前时间后延迟1 分钟,之后再次显示时间:<br>
名称: date<br>
使用权限: 所有使用者<br>
使用方式:<br>
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+formAT] [MMDDhhmm[CC]YY][.ss]<br>
说明:<br>
date 可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:<br>
时间方面:<br>
% : 印出% %n : 下一行%t : 跳格%H : 小时(00..23) %I : 小时(01..12) %k : 小时(0..23) %l : 小时(1..12) %M : 分钟(00..59) %p : 显示本地AM 或PM %r : 直接显示时间(12 小时制,格式为hh:mm:ss [AP]M) %s : 从1970 年1 月1 日00:00:00 UTC 到目前为止的秒数<br>
<br>
%S : 秒(00..61) %T : 直接显示时间(24 小时制) %X : 相当于%H:%M:%S %Z : 显示时区<br>
日期方面:<br>
%a : 星期几(Sun..Sat) %A : 星期几(Sunday..Saturday) %b : 月份(Jan..Dec) %B : 月份(January..December) %c : 直接显示日期与时间%d : 日(01..31) %D : 直接显示日期(mm/dd/yy) %h : 同%b %j : 一年中的第几天(001..366) %m : 月份(01..12) %U : 一年中的第几周(00..53) (以Sunday 为一周的第一天的情形) %w : 一周中的第几天(0..6) %W : 一年中的第几周(00..53) (以Monday 为一周的第一天的情形) %x : 直接显示日期(mm/dd/yy) %y : 年份的最后两位数字(00.99) %Y : 完整年份(0000..9999)<br>
若是不以加号作为开头,则表示要设定时间,而时间格式为MMDDhhmm[CC]YY][.ss],其中MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数<br>
参数:<br>
-d datestr : 显示datestr 中所设定的时间(非系统时间) --help : 显示辅助讯息-s datestr : 将系统时间设为datestr 中所设定的时间-u : 显示目前的格林威治时间--version : 显示版本编号<br>
例子:<br>
显示时间后跳行,再显示目前日期:<br>
date '+%T%n%D'<br>
显示月份与日数:<br>
date '+%B %d'<br>
显示日期与设定时间(12:34:56) :<br>
date --date '12:34:56'<br>
注意:<br>
<br>
当你不希望出现无意义的0 时(比如说1999/03/07),则可以在标记中插入- 符号,比如说date '+%-H:%-M:%-S' 会把时分秒中无意义的0 给去掉,像是原本的08:09:04 会变为8:9:4。另外,只有取得权限者(比如说root)才能设定系统时间。<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -