Linux常用命令

Linux的目录结构是树状的,由最外层的根目录及内层的子目录组成。

一、linux的目录结构

1.根目录

cd /		#进入Linux的根目录
ls			#显示当前路径下的内容

根目录下的一些文件:

        bin-----------------------命令          cdrom-----------------------光驱

        etc-----------------------配置           home-------------------------家目录

        dev----------------------设备            boot--------------------------启动项

        lib------------------------ 库              media------------------------媒体

        opt-----------------------选项           root---------------------------root用户

        sbin---------------------系统命令     tmp----------------------------交换的

        sys-----------------------系统的        usr------------------------------用户的

 如果误删除lib或者sbin文件夹,可能造成系统奔溃,一般在home目录中进行操作,其他目录不能随便改动。

2.目录的层级关系

cd /home/edu     
cd ../home 

3. --help 查看命令帮助信息

因为命令很多就算都学完也会有遗忘,help命令可以为我们提供命令的帮助信息

4.man命令:查看命令 库函数 系统调用

以"章节"为单位管理

第1章存放的是命令

第2章存放的是系统调用(如:操作系统提供的函数open)

第3章存放的是库函数(如:c库提供的函数printf)的帮助信息

如果我们遇到找不见函数头文件的情况就可以用命令man 3 函数名来进行查找,虽然man查找显示的是英文,但是我们可以借助有道来翻译一下。

二、Linux常用命令

1.自动补全tab

┌──(root㉿kali)-[/home/edu/work]
└─# fin                     
Completing external command
fincore  find     findfs   findmnt  finger 

#有提示的自动补全,比如我们想输入fincore命令,但是只记得是以fin开头,不知道后面时什么,就可以输入fin然后按tab键自动补全

2.查看历史命令history

┌──(root㉿kali)-[/home/edu/work]
└─# history                                   
    1  echo 1 >> /proc/sys/net/ipv4/ip_forward
    2  cat /proc/sys/net/ipv4/ip_forward
    3  ifconfig
    4  dirftnet -i eth0
    5  driftnet -i eth0
    6  vim /etc/network/interfaces.d
    7  su
    8  su
    9  cd /
   10  ls
   11  cd /
   12  ls
   13  cd /

3. 重定向 >

┌──(root㉿kali)-[/home/edu/work]
└─# ls
a.txt  b.txt
┌──(root㉿kali)-[/home/edu/work]
└─# ls > text.txt                        #系统会自动创建text.txt文件并将ls显示的结果写入该文件
┌──(root㉿kali)-[/home/edu/work]
└─#                               
 #将字符串"hehe"追加到text.txt   
┌──(root㉿kali)-[/home/edu/work]
└─# echo "hehe" >> text.txt 
 
 #会将text.txt文件中原有的内容清空 将字符串"hehe"重写到text.txt  
┌──(root㉿kali)-[/home/edu/work]
└─# echo "hehe" > text.txt   

 4.管道

当etc路径下有很多很多文件,我们想要查找的文件是以a开头的,使用ls命令显示结果默认只显示最后一屏的文件,文件是字母表顺序的,此时待查找的文件在最前面,我们不得不手动滑滚动条来滑到最前面,这样并不是很友好,有什么更好的方法呢?

管道就是很好的工具,下面使用管道可以以more的方式显示etc的结果集,它是从最开始分页显示的,当我们查找的文件不在当前页时,按回车键换行,按空格键换页,按"q"可退出.

ls /etc | more                         #使用more的方式显示etc的结果集

ls /etc | wc -w                #统计etc目录下有多少个文件

5.ls命令

ls          #查看当前目录下的文件名
ls 目录名    #查看指定目录下的文件名
ls /        #查看根目录下的文件名
ls -a       #查看当前目录下所有文件名,包含隐藏文件
ls -l       #查看当前目录下文件的详细信息
ls -al      #查看当前目录下所有文件的详细信息
ls -hl      #详细信息中的字节数带单位显示

drwxr-xr-x 2 root root 4.0K 12月 12 11:26 public

  • d:文件类型,linux里面不以后缀名作为文件类型的区分

        linux中一共有七种文件类型bcd-lsp,在linux中一切皆文件

        b:块设备文件

        c:字符设备文件

        d:目录文件

        -:普通文本

        l:软链接文件

        s:套接字文件

        p:管道文件

  • rwxr-xr-x:文件权限,以三个为一组,分别表示用户主,用户组以及其他用户对文件的操作权限,如果是-,就表示没有这个权限
  • 2 表示链接文件的个数
  • root 用户名
  • root 用户组名
  • 4.0K:文件大小,默认以字节为单位
  • 12月 12 11:26:时间戳,文件最后修改时间
  • public:文件名

6.tree命令:以树形结构显示当前目录下的文件

系统默认没有这个命令,需要安装 普通用户使用sudo apt-install tree安装

用法:tree -L 层数 用于显示指定的层数

tree -L 3      #表示只显示三层树结构

7.clear命令:清屏命令

clear              #清屏命令
#可以使用快捷键CTRL+L也可以清屏

8.cd 命令

cd 当前目录下的目录名      #进入指定目录
cd /                      #进入根目录
cd ~  或cd                #进入家目录
cd ..                     #进入当前目录的上一级目录

绝对路径:从根目录(最顶层目录开始的路径)

┌──(root㉿kali)-[/home/edu]
└─# ls
public  src  tmp  tools  work                
┌──(root㉿kali)-[/home/edu]
└─# cd src                
┌──(root㉿kali)-[/home/edu/src]
└─# cd /home/edu/tools                     #绝对路径

相对路径:相对当前路径下的那个路径

┌──(root㉿kali)-[/home/edu]
└─# ls
public  src  tmp  tools  work               
┌──(root㉿kali)-[/home/edu]
└─# cd src               
┌──(root㉿kali)-[/home/edu/src]
└─# cd ../tools                             #相对路径 
cd -                #回到刚才所在的路径(相当于Windows下的后退)
cd ..               #返回上一级目录
cd ~                #回到家目录下

9.pwd命令

pwd                      #显示当前工作目录的绝对路径

 10.cat命令

cat 文件名      #显示文件的内容
cat -n 文件名   #带行号的显示文件的内容

11. rm命令

rm 文件名                    #删除指定的文件
rm -rf 目录文件名            #删除指定的目录文件

注:选项-rf可以没有,但是删除文件夹的时候必须带-r,选项-f的意思是强制删除,即使要删除的文件或文件夹不存在也不报错。

12.cp命令

cp 文件名  目录名             #将文件复制到目录中
cp 目录1   目录2  -a          #将目录1复制到目录2中 
cp 文件名1  文件名2           #如果文件2不是目录,则文件1复制一份为文件2
                             #如果文件2存在且不是一个目录,直接将内容替换成文件1的内容

13.mv命令

mv 文件名 目录名            #将文件移动到指定目录中
mv 目录名1 目录名 2         #将目录1移动到目录2中
mv 文件1 文件2              #如果文件2不存在,则功能为重命名

14.mkdir命令

mkdir 目录名                          #创建一个文件夹
mkdir 目录1 目录2 ...                 #创建多个目录
mkdir -p 目录1/目录2/目录3/...        #嵌套的创建多个文件

 15.touch命令

touch 文件名
注意:如果文件已经存在 ,则touch命令会修改当前文件的时间戳
-rw-r--r-- 1 root root    0 12月 12 15:21 file1
-rw-r--r-- 1 root root    0 12月 12 15:23 file1

16.find命令

find 路径 -name 文件名    #在指定的路径下查找指定的文件,会从指定路径下包括所有的子目录中寻找

 17.grep命令

grep 查找信息 文件名   
#在指定文件中查找指定内容,将查找到的内容整行输出并高亮显示查找的内容
grep 查找信息 文件名 -n    
#在指定的文件中查找指定的内容,将查找到的内容整行带行号输出并高亮显示查找的内容
grep 查找信息 文件名 -R -n   
#从当前目录以及子目录中的文件中查找指定信息

18.ln命令

ln 源文件名字 链接文件名 -s         #创建一个链接文件,类似Windows的快捷方式

注意:不管对源文件还是链接文件进行修改,双方的内容都会改变

如果删除链接文件对源文件没有任何影响

如果删除源文件,链接文件将失效

19.tar 压缩与解压缩命令

19.1 gzip格式:

  • 压缩
tar zcvf 压缩包包名 文件1 文件2 文件3 ...
#注意:压缩包包名一般以.tar.gz

  • 解压缩
tar zxvf 压缩包包名
tar zxvf 压缩包包名 -C 路径           #将文件解压到指定路径

19.2  bzp2命令

  • 压缩
tar jcvf 压缩包包名 文件1 文件2 文件3 ...
注意:压缩包名一般以.tar.bz2作为后缀名

  • 解压缩
tar jxvf 压缩包包名 
tar jxvf 压缩包包名 -C 路径          #将文件解压到指定路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zkaisen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值