文件和目录操作命令
- cd
- pwd
- ls
- cp
- mv
- touch
- rm
- mkdir
- rmdir
-
cd
切换当前操作目录
命令使用格式:
ca <选项> <目录路径>
-
选项列表
-L (默认值)如果要切换到的目标目录是一个符号连接,那么切换到符号连接的目录。 -P 如果要切换到的目标目录是一个符号连接,那么切换到它指向的物理位置目录。 - 当前工作目录将被切换到环境变量OLDPWD所表示的目录,也就是前一个工作目录。
-
目录路径可以是相对路径也可以是绝对路径
实例
-
进入
/etc/
目录cd /etc
-
进入用户家目录
cd ~
-
-
pwd
查看当前的操作路径
实例
-
查看当前的工作目录
pwd
-
-
ls
查看路径下面的内容
命令使用格式:
ls <选项参数> <路径>
-
选项参数列表
-C # 多列输出,纵向排序。 -R # 递归列出遇到的子目录。 -a # 列出所有文件,包括以 "." 开头的隐含文件。 -c # 使用“状态改变时间”代替“文件修改时间”为依据来排序(使用“-t”选项时)或列出(使用“-l”选项时)。 -d # 将目录名像其它文件一样列出,而不是列出它们的内容。 -q # 将文件名中的非打印字符输出为问号。(对于到终端的输出这是缺省的。) -r # 逆序排列。 -t # 按时间信息排序。 -1 # 单列输出。 -i # 输出文件前先输出文件系列号(即 i 节点号: i-node number)。
实例
-
显示当前目录下包括隐藏文件在内的所有文件列表
ls -a
-
列出当前目录可见文件详细信息
ls -l
-
显示文件的inode信息
ls -i
-
列出详细信息并以可读大小显示文件大小
ls -lh
-
-
cp
将一个或多个源文件或者目录复制到指定的目的文件或目录。
命令使用格式:
cp <选项参数> <源文件路径> <目标文件路径>
-
选项参数
-a:此参数的效果和同时指定"-dpR"参数相同; -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录; -f:强行复制文件或目录,不论目标文件或目录是否已存在; -i:覆盖既有文件之前先询问用户; -l:对源文件建立硬连接,而非复制文件; -p:保留源文件或目录的属性; -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -s:对源文件建立符号连接,而非复制文件; -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件; -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀; -b:覆盖已存在的文件目标前将目标文件备份; -v:详细显示命令执行的操作。
所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。如果没有文件复制的权限,则系统会显示出错信息
实例
-
将
test.txt
文件复制到/tmp目录下cp -u -v test.txt /tmp
-
-
mv
用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。
命令格式:
mv <选项参数> <原文件> <目标文件>
-
参数列表
--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份; -b:当文件存在时,覆盖前,为其创建一个备份; -f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录; -i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。 --strip-trailing-slashes:删除源文件中的斜杠“/”; -S<后缀>:为备份文件指定后缀,而不使用默认的后缀; --target-directory=<目录>:指定源文件要移动到目标目录; -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
实例
-
将
/var/log/message
文件移动到/tmp/
目录下,并且提示是否覆盖该文件mv -i /var/log/messages /tmp
-
-
touch
创建新的空文件
命令使用格式:
touch <选项参数> <文件>
-
选项列表
-a:或--time=atime或--time=access或--time=use 只更改存取时间; -c:或--no-create 不建立任何文件; -d:<时间日期> 使用指定的日期时间,而非现在的时间; -f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题; -m:或--time=mtime或--time=modify 只更该变动时间; -r:<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同; -t:<日期时间> 使用指定的日期时间,而非现在的时间; --help:在线帮助;
实例
-
创建一个
a.test
文件touch a.test
-
-
rm
删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉
命令使用格式:
rm <选项> <文件或目录>
-
选项列表
-d:直接把欲删除的目录的硬连接数据删除成0,删除该目录; -f:强制删除文件或目录; -i:删除已有文件或目录之前先询问用户; -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理; --preserve-root:不对根目录进行递归操作; -v:显示指令的详细执行过程。
实例
-
交互式删除当前目录下的文件test和example
rm -i test example
-
删除
test
目录下的所有文件rm -rf /test/*
-
-
mkdir
用来创建目录,指定要创建的目录列表,多个目录之间用空格隔开
命令使用格式:
mkdir <选项参数> <目录路径>
-
选项列表
-p或--parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;
实例
-
创建一个test目录
mkdir test
-
-
rmdir
用于删除空目录
命令使用格式:
rmdir <选项参数> <目录路径>
-
选项列表
-p或--parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;
实例
-
删除
test
空目录rmdir test
-