与目录相关的命令:
以下命令中出现的"递归"的意思:
一般来说,选项中出现r/R的时候几乎都是表示递归处理。
递归表示逐步处理文件。
command | comment |
---|---|
pwd | 用于显示当前所在的完整路径 |
mkdir | 用于创建一个目录。 -p 该选项用于创建多级目录。 |
cd | 用于切换目录 | 路径 . 表示当前目录 .. 表示上级(父级)目录 ~ 表示用户的家目录,如果在~跟用户名,就表示要去到该用户的家目录。 "-" 表示与上次所在目录进行切换。 相对路径:相对于当前所在位置而出发的路径。 绝对路径:以/(根目录)开始的路径。 |
ls | 用于显示目录 | 文件的信息 -a:显示所有的文件夹内容(包括隐藏) -l:用于显示文件/夹的详细信息 -h:与-l配合使用,可以显示文件的体积大小(自适应单位b,k,m,g ...) -d:跟上指定的目录时,就会显示该目录的信息 ls -l = ll |
案例:
mkdir 默认只能创建一个级别的目录,如果想要创建多级目录时,需要配合-p选项来使用
mkdir /root/1/2/3/4/5
上述命令在执行时,如果/root目录下没有1目录或2、3、4中任意目录不存在,此命令必然失败,因为mkdir默认不支持多级目录,需要在命令中加入-p参数
mkdir -p /root/1/2/3/4/5
成功~
cd 案例:
回到上级目录
cd ..
cd ../..
进入指定用户(zhangsan)的家目录
cd ~zhangsan
去到/root/目录下(说明:当前在/etc/sysconfig/network-scripts/)
相对路径:
cd ../../../root
绝对路径:
cd /root
command | comment |
---|---|
cp | 语法:cp [path]/file1 [path]/file2 用于copy(拷贝)文件/夹的命令 如果拷贝的是一个文件夹时,需要配合选项-r来使用 |
mv | 语法:mv [path]/file [path]/ 改名:mv fileName1 fileName2 |
touch | 用于创建一个空白的文本文件,也可以修改文件/夹的时间戳 |
rm | -r 表示递归处理 -f 表示强制执行 |
rmdir | 用于删除目录使用,但只能删除空目录。 |
案例
拷贝一个文件到别的目录:
cp /root/install.log /home
cd /home
ls
拷贝整个目录到其它目录下:
cp -r /root/ /home/ # 将root目录拷贝到home目录下
cp -r /root/\* /home # 将root目录下的所有内容拷贝到/home目录下
移动文件和修改名称
mv /home/install.log /tmp # 移动了文件到/tmp目录下
mv /tmp/install.log /home/1 # 移动/tmp目录下的install文件到/home目录下,并同时修改文件名为"1"
command | comment |
---|---|
rename | 语法:rename 修改谁 改成啥样 谁符合条件 批量改名 perl版本:正则表达 c语言版本:不支持正则 CentOS 6.5 版本不支持perl版本。 ? 代表一个字符 ?? 代表两个字符 * |
案例:
通过修改文件名称让文件可以得到一个正确的排序(升序)
touch foo{1..299}
语法:rename 修改谁 改成是样 谁符合条件
rename foo foo0 foo?
修改之后文件名foo1..foo9就变成foo01..foo09
rename foo foo0 foo??
修改之后文件名foo01..foo99就变成了foo001..foo099
此时就完成了文件的排序