Linux常用与文件目录相关的Shell命令
Linux文件系统采用了多级目录的树型层次结构管理文件。树型结构的最上层是根目录,用/表示。在根目录之下是各层目录和文件。当登录Linux时,首先进入到一个特殊的目录,称为主/登录目录。可以通过~来指定(或者引用)主目录。当前所在的目录称为当前工作目录(又称当前目录),当前目录可以用“.”表示,当前工作目录的父目录可用“…”表示。
1.ls(显示目录中的文件)
参数:
-a //显示目录下所有文件
-l //以长格式显示目录下的内容
-R //表示递归显示
实例:
#ls //显示当前目录下全部的内容
#ls /bin/ //显示根目录下bin目录下的全部文件
2.cp(复制文件)
参数:
-f //若文件在目标路径中存在则强制覆盖
-i //当文件在目标路径中存在提示是否覆盖
-R //递归复制(包含子目录一起复制)
-b //生成覆盖文件的备份
-v //显示命令执行过程
实例:
#cp /etc/* /a1/ //根目录下etc目录下的全部文件复制到根目录a1目录下
#cp ./* /bin/ //当前目录下的全部文件复制到根目录的bin目录下
#cp /bin/* ./ //根目录下bin目录下的全部文件复制到当前目录下
#cp -f /sbin/* /exe/ //强制把sbin目录下的全部文件复制到exe文件下
3.rm(删除文件)
参数:
-f //强制删除
-i //提示是否删除
-r //递归删除
-v //显示命令执行过程
实例:
#rm /m1/f1 //m1文件下的f1文件进行删除
#rm * //把所有文件进行删除
#rm -f /m1/* //强制删除m1目录下的全部文件
#rm -rf /m1/ //递归删除m1目录下的文件
4.mv(移动文件、重命名文件)
参数:
-f //强制移动
-i //提示是否移动
-v //显示命令执行过程
实例:
#mv /m1/f1 /m2/ //m1目录下的f1文件移动到m2目录下
#mv f1 f2 //把f1文件重命名为f2文件
#mv -f /d1/* /d2/ //d1目录下的全部文件强制移动到d2目录下
5.touch(改变文件的时间记录、创建空文件)
参数:
-t //用给定时间([[CC]YY]MMDDhhmm[.ss])
实例:
touch -t 202003261550 file1 //将file1的时间记录改为2020年3月26日15点50分
6.cd(改变当前路径)
说明:
" ." //代表当前目录
".." //代表当前目录的父目录
"/" //代表根目录
"~" //表示当前用户的主目录
7.mkdir(建立目录)
参数:
-p //循环建立目录
实例:
#mkdir /d1/
#mkdir /d1/d2/
#mkdir -p /d3/d4/
8.rmdir(删除目录(为空目录))
参数:
-p //循环删除空目录
实例:
#rmdir ./a1/
#rmdir /etc/a2/
#rmdir -p /d1/d2/
9.cat(显示文件全部内容)
实例:
#cat /etc/inittab //显示etc目录下inittab文件中的全部内容
#cat > /abc/abc.txt //输出重定向
#cat myfile1 > myfile2 //把myfile1中的内容复制到myfile2中
#cat myfile1 >> myfile2 //输出追加重定向(把myfile1中的内容追加到myfile的末尾)
目录名 | 说明 |
---|---|
/ | Linux系统根目录 |
/bin | 存放普通用户可执行文件,系统中的任何用户都可以执行该目录中的命令 |
/sbin | 存放系统的管理命令,普通用户不能执行该目录中的命令 |
/home | 普通用户的主目录,每个用户在该目录下都有一个与用户名同时的目录 |
/etc | 存放系统配置和管理文件,这些文件都是文本文件 |
/boot | 存放内核和系统启动程序 |
/usr | 该目录最庞大,存放应用程序及相关文件 |
/dev | 存放设备文件 |
/proc | 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息 |
/var | 用于存放大系统中经常变化的文件,如日志文件、用户邮件等 |
/tmp | 公用的临时文件存储点 |