-
002 Linux 文件与目录命令的必会姿势!
01这些命令真的很重要吗?
文件及目录的路径切换、显示、创建、复制、移动和删除操作的常用姿势,必会!因为这些命令是使用 Linux 系统进行工作的基础,是摆脱小白的第一步,是构建大厦的基石!
发现锅锅真是个话痨啊!那锅锅就不要脸了真就再比比两句啦,承蒙不要嫌弃(=_=)。这篇文章不是 Linux 相关命令使用字典或百科全书,这一篇文章里总结工作实践中会用到的关于文件和目录操作常用的基础命令,这些命令真的很重要!
02路径切换和显示:cd、ls、pwd
- cd (全称 Change directory) 命令在 Linux 中是所有命令的基础依赖。
- ls 是离不开 cd 的基友,用来查看当前文件夹下有哪些文件和目录,ls (全称 List files)。
- pwd 看看自己身在何处。cd 切来切去,忘了自己身在何处,那就打印下当前的所在的工作路径,这就是 pwd (Print working directory)。
cd
- cd / # 进入主机根目录。
- cd ~ # 进入用户根目录。
- cd .. # 返回爸爸(上级)目录,注 . 代表当前目录。
- cd ../.. # 返回爷爷(上级的上级)目录,可以以此类推。
- cd – # 返回上次目录。来回在两个目录中切换时很好用。
- cd /home/root/temp # 使用绝对路径,从根目录开始,到temp目录。
ls
-
ls # 显示当前目录下所有文件和目录。
-
ls -l # 显示文件详情(文件名称、文件类型、权限、拥有者、文件大小等详细列出)。
-
ll # 等同 ls -l。
-
ls -al # 等同 [ll -a] 显示所有文件及详情,(ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)。
-
ls -lh # 等同 [ll -h] 以适合的单位显示文件大小,如kb、Mb、Gb。-h 这个参数在linux中很有用,基本所有需要统计大小的命令中都可以用它,如df -h, du -h,free -h。
-
ls -lhs # 对文件或者目录进行从大到小的排序
-
ls -lrt #按照文件修改时间升序,从上到倒下时间越来越近
详细解释:
-l use a long listing format 以长列表方式显示(详细信息方式)
-t sort by modification time 按修改时间排序(最新的在最前面)
-r reverse order while sorting (反序) -
ls -lt #按照时间降序(默认:最新修改的排在前面)
pwd
- pwd # 查看当前所在路径。
- pwdx pid #可配合查找应用的安装路径。如查找 zookeeper 的安装路径 ,[ps –ef|grep zookeeper],找到 pid (进程号),接着 [pwdx pid],即可找到 zookeeper 安装路径。
03创建:touch、mkdir
- touch (含义触碰)创建一个空文件。
- mkdir (全称 Make directory) 建立目录,创建一个空目录。
touch
- touch info.log #在当前目录下创建一个 info.log 的空文件。
- touch {01..10}info.log #注:是两个点号。批量创建文件,01info.log、02info.log、...、10info.log
mkdir
- mkdir dirs #在当前目录下创建空目录 dirs。
- mkdir log temp data # 同时创建多个同级目录,目录名以空格分开。
- mkdir -p parent/child/logs #一次性创建多级目录,在当前目录下创建 parent 目录,在 parent 目录下创建 child 目录,在 child 目录下创建 logs 目录。
04复制、移动和删除:cp、mv、rm
- cp (全称 copy)复制。
- mv (全称 move)移动。
- rm (全称 remove)删除。
cp
- cp info.log tempInfo.log #将 info.log 文件拷贝一份,拷贝后的文件名为 tempInfo.log。
- cp -R parent tempParent #将 parent 目录拷贝一份,拷贝后的目录名为 tempParent。一般加参数 -R(或参数-r,-r/R 表示递归),因为目录下一般会有子目录,否则无法成功拷贝。
mv
- mv /home/docker/info.log /home/temp/info.log #这个示例里文件名没变,就是搬移下文件位置。
- mv /home/docker/info.log /home/temp/tmp.log #这个示例里,搬移了文件位置且变更了文件名。
- mv info.log tmp.log #这个示例里等同于对文件进行了重命名。
- mv a b c /tmp #一次移动多个文件或到某个目录下
rm
- rm [文件名] #删除文件,文件不存在会有报错提示。
- rm -f [文件名] # (常用命令)删除文件,-f,忽略报错信息,不提示。
- rm -rf [目录名] # (常用命令)递归删除目录。
- rm -rf [文件1] [文件2] [目录1] [目录2] # (常用命令)删除多个文件和目录。
- rm -rf .log # 删除当前目录所有.log后缀结尾的文件, 是匹配符表示匹配所有字符。
- rm -i *.log # 删除所有以结尾log文件时,会逐一询问按 y 确认删除,n 不删除。
05跑路命令?千万不要作死自己!
- rm -rf / # 这个命令绝逼不能操作