目录相关命令)
mkdir
作用:make directories 创建目录
语法:mkdir [选项] 目录名称
选项:
-p 级联创建目录,如果目标目录已存在不会报错
================================================================================== #1、同一目录下目录文件和普通文件不可重名,因为在linux下目录文件和普通文件都被视为文件 [[email protected] ~]# ls -l test1 -rw-r--r--. 1 root root 60 Mar 4 23:17 test1 [[email protected] ~]# mkdir test1 mkdir: cannot create directory `test1‘: File exists 2、-p参数的使用 [[email protected] ~]# mkdir aa/bb/cc mkdir: cannot create directory `aa/bb/cc‘: No such file or directory [[email protected] ~]# mkdir -p aa/bb/cc #加上-p参数创建成功 [[email protected] ~]# tree aa #tree命令,看一下目录结构 aa └── bb └── cc 2 directories, 0 files [[email protected] ~]# ls -ld aa drwxr-xr-x. 3 root root 4096 Mar 5 02:44 aa [[email protected] ~]# mkdir -p aa #aa目录已存在,但加上-p以后目录重复并不会报错,也不会改变aa目录的内容和属性 ==================================================================================
rm
作用:remove files or directories 删除文件
语法:rm [选项] 文件名称
选项:
-r recursive 递归的删除目录文件及其内容
-f force 强制删除,不会提示用户,哪怕此文件并不存在
=================================================================================== #1、-r选项 [[email protected] ~]# ls ./dir1 text1 [[email protected] ~]# rm dir1 rm: cannot remove `dir1‘: Is a directory #rm不加-r选项无法删除目录文件 [[email protected] ~]# rm -r dir1 rm: descend into directory `dir1‘? y rm: remove regular empty file `dir1/text1‘? y rm: remove directory `dir1‘? y #2、-f选项 [[email protected] ~]# ls dir2 test2 [[email protected] ~]# rm -rf dir2 #并不会做任何提示,直接删除 [[email protected] ~]# ls bad ls: cannot access bad: No such file or directory [[email protected] ~]# rm -f bad #bad文件并不存在,加上-f选项后不会提示 ===================================================================================
cp
作用:copy files and directories 复制文件
语法:cp [选项] 源文件/目录 目标文件/目录
选项:
-r 递归复制目录及其内容
-p 保留文件时间戳、拥有者、权限等信息
================================================================================== #1、-r选项 [[email protected] ~]# ls -l dir3 total 0 -rw-r--r--. 1 root root 0 Mar 5 04:34 test3 [[email protected] ~]# cp dir3 dir4 cp: omitting directory `dir3‘ [[email protected] ~]# cp -r dir3 dir4 [[email protected] ~]# ls -l dir4 total 0 -rw-r--r--. 1 root root 0 Mar 5 04:35 test3 #可以看出来test3文件的时间戳改变了 #2、-p选项 [[email protected] home]# ll /home total 4 drwx------. 2 nagios nagios 4096 Mar 4 04:36 nagios [[email protected] home]# cp -rp /home/nagios /tmp/ [[email protected] home]# ll -d /tmp/nagios drwx------. 2 nagios nagios 4096 Mar 4 04:36 /tmp/nagios #保留了属主、属组、时间及权限 ==================================================================================
mv
作用:move (rename) files 移动(重命名)文件
语法:mv [选项] 源文件/目录 目标文件/目录
选项:
-f force 覆盖文件时不提示
==================================================================================== #1、-f选项 [[email protected] dir4]# ll test* -rw-r--r--. 1 root root 0 Mar 5 04:35 test3 -rw-r--r--. 1 root root 0 Mar 5 04:53 test4 [[email protected] dir4]# mv test3 test4 mv: overwrite `test4‘? n #因为test4已存在,所以会提示是否覆盖 [[email protected] dir4]# mv -f test3 test4 [[email protected] dir4]# ll test* -rw-r--r--. 1 root root 0 Mar 5 04:35 test4 #查看结果,test4已被覆盖 ====================================================================================
文档命令)
touch
作用:可以修改文件时间参数,当touch目标文件不存在时会创建它。
语法:touch filename
PS:时间参数包含
atime:accesstime 访问时间;
mtime:modifytime 修改内容时间;
ctime:changetime 改变文件权限时间
=============================================================================== #1、修改时间参数 [[email protected] ~]# stat test11 #查看test11文件的状态信息 File: `test11‘ Size: 3 Blocks: 8 IO Block: 4096 regular file Device: 802h/2050d Inode: 12121 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2015-03-05 04:44:01.088979285 +0800 Modify: 2015-03-05 04:43:53.537979166 +0800 Change: 2015-03-05 04:43:53.537979166 +0800 [[email protected] ~]# touch test11 #touch一下 [[email protected] ~]# stat test11 #再看一下,发现三个时间改变了吧 File: `test11‘ Size: 3 Blocks: 8 IO Block: 4096 regular file Device: 802h/2050d Inode: 12121 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2015-03-05 05:26:11.701977204 +0800 Modify: 2015-03-05 05:26:11.701977204 +0800 Change: 2015-03-05 05:26:11.701977204 +0800 #2、创建普通文件 [[email protected] ~]# ll test* -rw-r--r--. 1 root root 3 Mar 5 05:26 test11 -rw-r--r--. 1 root root 6 Mar 5 04:44 test22 [[email protected] ~]# touch test33 [[email protected] ~]# ll test* -rw-r--r--. 1 root root 3 Mar 5 05:26 test11 -rw-r--r--. 1 root root 6 Mar 5 04:44 test22 -rw-r--r--. 1 root root 0 Mar 5 05:28 test33 ================================================================================
cat
作用:查看文档内容并在终端界面输出
语法:cat filename
PS:可以通过cat > file的方式向file中输入键盘上敲打的字符
================================================================================ [[email protected] ~]# cat > test22 hahahaha good #按下ctrl+d退出 [[email protected] ~]# cat test22 hahahaha good ================================================================================
tac
作用:与cat输出的内容顺序上下颠倒
语法:tac filename
more
作用:分屏输出文档内容,可向下翻页查看。
语法:more filename
操作方式:按下空格键,向下翻屏
less
作用:分屏输出文档内容,可上下翻页或上下翻行查看。
语法:less filename
操作方式:
按下空格键,向下翻屏;
按上下箭头翻行;
按j键,向下移动一行,按k键,向上移动一行;
按ctrl+f,向下翻页;
按ctrl+b,向上翻页;
按shift+G,前往文档最上面;
按shift+g,前往文档最下面。
head
作用:标准输出文档头部N行
语法:head [选项] filename
选项:
-n 输出文档头部n行(例如head -n 行数 filename / head -行数 filename)
PS:没有-n参数的话,默认输出前十行。
tail
作用:标准输出文档尾部N行
语法:tail [选项] filename
选项:
-n 输出文档头部n行(例如tail -n 行数 filename / tail -行数 filename)
-f 动态显示(查看文档时,如果文档内容发生改变,tail的输出会动态改变)
-F 在-f的基础上增加一个 -retry,不常用。
PS:没有-n参数的话,默认输出后十行。