常见的shell命令

文章目录

常用的shell命令

一、终端的使用

1、打开

​ ctrl+alt+t

​ 鼠标右键点击桌面快捷方式

​ 通过搜索按钮找到终端Terminal

2、关闭

​ ctrl+d

​ 点击左上角的X

3、放大或者缩小

​ 放大:ctrl+shift+加号

​ 缩小:ctrl+减+减

4、在终端上复制

​ 复制:ctrl+shift+c

​ 粘贴:ctrl+shift+v

​ 选中要复制的字符串,点击鼠标滚轮

5、关闭当前进程(强制)

​ ctrl+c

二、shell命令(所有的命令输入完毕,按回车键执行)

1、管理员权限的切换

​ sudo su sudo -s

​ 输入密码(密码不回显)

2、退出管理员

​ exit

3、临时使用管理员权限

​ sudo 命令

4、man(manual)

=====================

​ man有九个手册

​ 第一手册:shell的解释

​ 第二手册:系统IO函数的解释

​ 第三手册:标准IO函数的解释

​ 如何用man去查找想要的信息?

​ man 手册数 关键字(命令、函数、配置文件)

​ 例如查找命令: man 1 ls

​ 如果不清楚要查找的信息在哪一个手册?

​ man -f 关键字

​ 根据返回的提示信息去选择需要查找的手册

5、ls(list) 查看指定路径的文件信息

================================

​ ls --》查看当前目录文件名

​ ls 路径 —》查看指定路径下的文件名

​ ls -l -》查看当前目录文件的详细信息

​ drwxr-xr-x 2 root root 4096 11月 30 2020 Desktop

​ linux下有七种文件类型:

​ d:目录

​ -:普通文件

​ p:管道文件

​ s:套接字文件

​ b:块设备文件

​ c:字符设备

​ l:链接文件

​ ls -lh —》以带单位的方式显示文件大小,必须加上l一起用

​ ls -a ----》查看所有(全部)文件(隐藏文件特点,都以点开头)

​ 备注:

​ drwxr-xr-x 16 gec gec 4096 3月 29 17:47 .

​ 表示当前目录

​ drwxr-xr-x 16 gec gec 4096 3月 29 17:47 …

​ 表示上一级目录

6、cat/tac/less/more(查看文件内容)

==============================

​ cat filename —》把文件内容打印到终端

​ cat /etc/vim/vimrc —》查看/etc/vim/路径下的vimrc

​ cat filename -n ----》把文件行号也显示出来

7、rm(remove) 删除文件、目录

==============================

​ rm filename -----》删除普通文件

​ rm dir/ -r —》删除目录,-r表示递归的删除目录及其子目录

8、mkdir/rmdir(make/remove directory) 创建目录、删除空目录(rmdir只能删除空目录)

================================

​ mkdir dir1/ —》创建一个dir1的目录

​ mkdir dir2/dir21/di211 -p --》创建嵌套空目录

​ rmdir dir/ —》删除空目录

​ 备注:

​ 安装tree工具,查看嵌套目录的结构,以树状图的方式显示

​ sudo apt update

​ sudo apt install tree

​ tree 路径 -L 2 //查看指定路径下的两个层次文件夹

9、touch/gedit (创建普通文件、更新文件时间)

==============================

​ touch filename —》如果filename存在那么就更新filename时间,如果不存在就创建filename文件

​ touch 1.txt 2.txt 3.pdf —》一次性创建多个文件

​ gedit filename —>如果文件存在就打开编辑(读、写),如果不存在就打开文件

10、cp(copy)复制文件

================================

​ cp file1 file2 --》文件到文件

​ cp file dir/ —》文件到目录

​ cp dir1/ dir2/ -r —》目录到目录,-r递归的复制目录及其子目录

11、mv(move)移动、重命名

================================

​ mv file1 file2 ----》重命名

​ mv file dir -----》移动

​ mv dir1 dir2 -----》移动目录文件,这里不需要跟上-r

cp和mv的区别:

1、 cp用来拷贝文件,mv用来移动文件

2、 cp拷贝文件之后,原文件还在,mv移动文件,原文件就不见了

3、 cp在拷贝目录文件的时候,需要加上-r进行递归,而mv移动的时候,不需要

目录文件存放的是文件索引

12、cd(change directory) 切换当前路径

=================================

​ cd 或者 cd ~ -----》切换到家目录(/home/gec)

​ cd - ----》切换到上一次操作的路径

​ cd 路径 -----》切换到指定的路径下

​ cd …/ ----》切换到上一级目录

​ cd …/…/ ----》切换到上上级目录

​ 绝对路径:从根目录“/”开始访问目标文件

​ 相对路径:从当前目录开始访问目标文件

13、find(查找文件)ls可以跟find有相同的作用

============================

​ find 路径 按什么方式 要查找的内容

​ find / -name stdio.h --》按名字查找文件

14、grep(查找字符串)

=============================

​ grep ‘as’ filename ----》在指定的文件中找字符串as

​ grep ‘as’ dir/ -rnH ---->递归的在指定路径下所有文件中查找字符串

​ ls | grep txt —》把ls的结果通过管道给到grep作为输入(不常用)

15、head/tail(查看文件前面的行数内容,文件末尾的行数内容)(不常用)

=================================

​ head filename —》查看文件前面的行内容

​ head -n 6 filename —>查看文件前6行内容

​ tail filename —》查看文件前面的行内容

​ tail -n 6 filename —>查看文件末尾6行内容

16、sort(排序)(不常用)

=================================

​ sort filename -----》把文件正序输出到屏幕

​ sort filename -r ----》把文件逆序输出到屏幕

17、uniq(去除相同的相邻行)(不常用)

================================

​ uniq filename -----》把文件中相邻相同的行去掉输出终端

​ sort file | uniq ----》先排序,把排序的结果通过管道(|)给到uniq的命令

​ sort 3.txt | uniq > 33.txt —》先排序,把排序的结果通过管道(|)给到uniq的命令,然后通过输出从定向写入一个新文件

18、diff(different)对比两个文件的差异、生成补丁

==================================

​ diff file1 file2 -u —》对比两个文件的差异

​ diff dir1 dir2 -ru —》对比两个目录的差异

19、file(查看文件属性)

=================================

​ file filename -----》查看文件属性

20、env(environment)查看系统环境变量(不常用)

===================================

​ env ------》在终端上打印系统环境变量

21、echo在中上显示变量或字符串(不常用)

====================================

​ echo abc ----》在终端原样打印

​ echo hello > 1.txt ---->把hello从定向到文件中

​ echo $A ----》在终端打印变量A的值

​ 备注:在shell中想要使用变量,需要$解释出来

22、export 设置环境变量

====================================

​ export PATH= P A T H : / h o m e / y e n g / D e s k t o p 添 加 一 个 路 径 , 一 定 要 用 PATH:/home/yeng/Desktop 添加一个路径,一定要用 PATH:/home/yeng/Desktop引用PATH原来的值添加

​ 备注:

​ 1、在终端上执行的命令都是临时有效

​ 2、想要永久生效,就要把命令写入~/.bashrc

​ 3、.bashrc是shell软件的配置文件(脚本)

​ 4、把新配置的添加到文件末尾

​ 备注:

​ 1、环境变量PATH的作用是,存放系统中的程序所在的路径,使得运行这些程序时不需要再特定指明所在的路径

​ 2、环境变量LD_LIBRARY_PATH的作用是,存放系统中的库所在的路径,使得链接库时不需要再特定指明其所在路径

23、tar 归档或者压缩文件、释放归档或解压

=========================================

​ tar 参数选项 压缩名 压缩文件列表 —》创建归档或解压

​ tar 参数选项 压缩名 ----》解压

​ c 创建

​ x 释放

​ v 显示过程

​ f 指定文件

​ z 压缩或者解压gzip格式

​ j 压缩或者解压bz2格式

​ -C 解压时指定解压路径

​ tar cvf test.tar 3.txt 3.txt 5.txt demo.txt --》创建一个归档文件test.tar

​ tar xvf test.tar —》释放归档文件

​ tar cvfz t1.tar.gz 3.txt 5.txt demo.txt —》z参数压缩成gzip格式文件

​ tar xvfz t1.tar.gz ----》解压gzip格式

​ tar cvfj t2.tar.bz2 3.txt 5.txt demo.txt —》j参数压缩成bz2格式文件

​ tar xvfj t2.tar.bz2 ----》解压bz2格式

tar xvfj t2.tar.bz2 -C /tmp

24、ln(link) 创建链接文件(硬链接、软链接)

===================================================

​ ln a.txt b.txt 创建一个硬链接

​ ln -s /mnt m —》创建一个软链接(符号文件)

25、pwd(present work directory) 显示当前工作路径

=================================================

​ pwd —》得到当前路径

26、who 显示系统上已登录的用户

==============================

​ who

​ 备注:ssh服务器安装使用

​ sudo apt install openssh-server

​ ifconfig 查看当前ip

27、adduser添加一个新的用户

===============================

​ sudo adduser zhangsan

28、write 给其他用户发消息

================================

​ write zhangsan

29、uname 查看系统信息

===============================

​ uname -a 打印所有信息

​ uname -p 查看当前处理器

30、通配符

===============================

​ 星号*: 代表任意长度任意字符串

​ cp *.txt …/ 把当前目录里面的所有的txt文件复制到上一级目录

​ 问号?: 代表一个任意字符

​ 花括号{}:创建序列

​ touch aa{1…9}.txt 创建出aax.txt文件,其中的x范围1~9

​ 中括号[]:只能查找

31、ps(process state)

=============================

​ ps -ef 查看当前系统进程信息

​ ps -aux 查看当前系统进程信息

​ 备注:

​ ps -ef | grep bash 筛选与bash相关的进程

32、top 动态显示进程信息

============================

​ Top 退出按Q

33、kill/killall 发送信号

================================

​ kill -l 查看信息所有的信号

​ kill -信号 进程号 kill -9 hello

​ kill 信号名 进程号 kill SIGKILL hello

​ killall -信号 进程名 killall -9 hello

​ killall 信号名 进程名 killall SIGKILL hello

​ 备注:

​ gcc 编译程序的命令

​ gcc -o hello hello.c 编译hello.c通过-o指定生成的可执行文件名字叫做hello

​ ./hello & 执行程序 &表示程序后台运行

34、df(disk format) 查看分区信息

==========================================

​ df -hT 查看磁盘使用情况,带单位显示

35、du(disk usage)查看磁盘使用情况

==========================================

​ du -sh dir/ 查看目录使用

36、chmod(change mode) 修改文件权限

==========================================

​ chmod 三位八进制 filename

​ chmod 0777 1.txt user、group、other对文件1.txt有全部权限

37、adduser/userdel 创建用户和删除用户

==================================

​ sudo adduser lisi 添加一个用户lisi

​ sudo userdel lisi 删除一个用户lisi

38、addgroup/delgroup 创建用户组和删除用户组

========================================

​ sudo addgroup Gtest 添加一个用户组Gtest

​ sudo delgroup Gtest 删除一个用户组Gtest

39、chown/chgrp 更改所属者、所属组

​ sudo chown zhangsan file 更改file所属者

​ sudo chgrp zhangsan file 更改file所属组

Linux的文件系统是以/开头的,其他的文件都是从这个地方开始的

Bin:系统中最常用的可执行文件(shell)

Sbin:存放可执行文件,不常用

Home:家目录

Tmp:Linux用来存放临时文件的

Dev:存放所有的设备文件

Lib:存放共享的库文件,bin和sbin的可执行文件的库

Etc:存放系统配置文件

Mnt:挂载目录

Usr:存放用户的文件,比如你用到的标准C库的头文件/usr/include 比如标准C库,/usr/lib

Apt-get 软件管理器

更新软件源

Sudo apt-get update

安装某一个工具

Sudo apt-get install xxx

卸载某一个工具

Sudo apt-get remove xxx

Vi编辑器

1、升级vi工具为vim

​ sudo apt install vim

2、修改vim的配置文件,使之可以使用方向键、鼠标、行号……

​ sudo gedit /etc/vim/vimrc

​ 删掉其中set前所有的",然后在最后一个set后加上set number

3、两种模式

​ 进入编辑模式:i o a

​ 进入命令模式:Esc

4、保存退出:命令模式输入:wq即可保存退出

快速到末尾:shift+g

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Yengi

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

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

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

打赏作者

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

抵扣说明:

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

余额充值