linux 命令随笔 ls cd pwd mkdir rm mv cp cat nl

时间:2024-05-12 14:36:14

Linux 命令练习

ls命令

ls就是list的简写,目的是打印当前目录下的清单

格式 ls[选项][目录名]

常用参数

-a	–all 列出目录下的所有文件,包括以 . 开头的隐含文件
-l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来
-d –directory 将目录象文件一样显示,而不是显示其下的文件
-h –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)
-t 以文件修改时间排序
范例
例一 列出/home文件夹下面的所有文件和目录详细资料
ls -a -l /homels -al /home
例二 列出当前目录下面以d开头的文件目录的详细内容
ls -l d*
例三 以容易理解的方式列出/home所有订单文件目录大小
ls-alh /home

  

  


CD 命令

cd命令的全称 是change directory ,目的是切换当前目录到指定的目录下面

主要的命令有下面几个

例一切换到当前的系统的根目录下面
cd /
例二切换到当前目录的父目录
cd ..
例三切换到当前的用户的主目录
cd ~
例四切换到当前目录上一次进入的目录
cd -

pwd命令

此命令的作用是查看当前工作目录的完整路径,pwd的完整的名字是
print working directory

命令格式

pwd【选项】
此命令的作用是查看当前工作目录的完整路径,pwd的完整的名字是
print working directory

常用参数

-P显示实际的物理
-L当前的目录为连接路径时,显示连接路径

例一 显示当前所在路径,可以使用下面的命令

pwd

例二 显示当前目录的物理路径

pwd -p

例三 显示当前目录的连接路径,

pwd -L


mkdir命令

mkdir命令用来创建指定名称的目录,
命令格式
mkdir[选项]目录

常用参数

-m --mode=模式 	  	设定权限模式
-p -- parents 可以死路径名
-v -- verbose 每次创建新的目录都显示信息

常用范例

例一递归创建多个目录
mkdir -p zhou/test
例二 创建权限为777的目录
mkdir -m 777 zhou
例三创建的时候显示信息
mkdir -vp zhou/test

rm命令

此命令是用于删除某个文件夹或者文件,使用时应该小心,以免删除文件无法恢复尤其文件夹 rm是remove的简写

命令格式

rm[选项]文件或目录

常用参数

-f -- forc        忽略不存在的文件,不提示
-i --interactive 进行交互式删除
-r -- recursive 指定的文件夹下面的全部目录和子目录都递归的删除
-v -- verbos 详细显示进行的步骤

常用范例

例一 删除文件
rm wangshouchang.log
例二强行的删除
rm -f wangshouchang.log
例三 删除后缀名为log的左右,删除前逐一的询问
rm -i *log
或者
rm *.log


mv命令

mv命令功能是移动文件或者更改文件名

命令格式

mv[选项]源文件或者目录  目标文件或目录

常用参数

-b  -back           若需覆盖文件。则覆盖前先行备份
-f -force 如果目标文件已经存在,不会询问而直接覆盖
-i --interactive 若目标文件已经存在时,就会询问是否覆盖
-u --update 若目标文件已经存在,且源文件比较新,才会更新
-t --target 该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后

常用范例

例一将文件wang.log 更名为zhou.log
mv wang.log zhou.log
例二 将wang.log移动到test目录下
mv wang.log  test
将a.txt移到test1目录下面,如果文件存在那么覆盖
mv -f a.txt  test1

cp命令

cp命令用来复制文件或者目录  cp是copy的缩写
参数形式
cp[选项]源文件 目录  cp [选项] -t 目录源文件
常用参数
参数	描述
-t --target-directory 指定目标目录
-i --interactive 覆盖前询问(使前面的 -n 选项失效)
-n --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)
-s --symbolic-link 对源文件建立符号链接,而非复制文件
-f --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-u --update 使用这项参数之后,只会在源文件的修改时间较目的文件更新时,或是对应的目的文件并不存在,才复制文件
对文件wang.log建立一个符号链接zhou.log
cp -s wang.log zhou.log
将test1 目录下的所有文件复制到test2目录下面,覆盖前询问
cp -i test1/* test2
将test1目录下的最近更新的文件复制到test2目录下面 ,覆盖前询问
cp -i -u test1/* test2

cat命令

cat命令的功能是将文件或者标准输入组合输出到标准输出
cat的是concatenate的简写
命令格式
cat[选项][文件]
常用参数
参数	描述
-A --show-all 等价于 -vET
-b --number-nonblank 对非空输出行编号
-e 等价于 -vE
-E --show-ends 在每行结束处显示 $
-n --number 对输出的所有行编号,由 1 开始对所有输出的行数编号
-s --squeeze-blank 有连续两行以上的空白行,就代换为一行的空白行
-t 与 -vT 等价
-T --show-tabs 将跳格字符显示为 ^I
-u (被忽略)
-v --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
常用范例
把wang.log文件的内容加上行号输入zhou.log这个文件里
cat  -n wang.log > zhou.log
把wang.log的文件的内容加上行号输入到zhou.log这个文件里,多行空行换成一行输出
cat  -ns wang.log > zhou.log
把wang.log的文件内容反向显示
tac  wang.log

nl命令

nl命令在Linux系统中用来计算文件中行号
nl可以将输出的文件内容自动的加上行号
nl可以将行号做比较多的显示设计,包括位数与是否自动补齐0的功能
nl命令是number of lines的缩写
命令格式
nl[选项][文件]
常用参数
参数  	描述
-b 指定行号指定的方式,主要有两种:
-b a 表示不论是否为空行,也同样列出行号(类似 cat -n)
-b t 如果有空行,空的那一行不要列出行号(默认值)
-n 列出行号表示的方法,主要有三种:
-n ln 行号在屏幕的最左方显示
-n rn 行号在自己栏位的最右方显示,且不加 0
-n rz 行号在自己栏位的最右方显示,且加 0
-w 行号栏位的占用的位数
常用范例
把wang.log的文件内容加上行号显示,空行不加行号
nl -b t wang.log
把wang.log的文件内容加上行号显示,行号分别在屏幕最左方
nl -n ln wang.log
nl -n rn wang.log
nl -n rz wang.log
把wang.log的文件内容加上行号显示,行号在屏幕最右方加0显示,行号栏目占位数为 3,
nl -n rz -w 3 wang.log