linux 常用指令

本文提供了一系列常用的Linux命令介绍,包括文件操作、权限管理、进程控制等核心内容,适合初学者快速掌握及专业人士查阅。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ls命令  (list file) 列出文件目录


1. ls (只显示文件名称)  2. ls -a (显示全部文件) 3. ls -l (长格式显示文件) 4. ls -al (显示所有文件并长格式显示)


 5.ls / (显示根目录文件) 6. ls ~ (显示用户家目录) 7.ls .. 和ls ../..  (查看父目录的文件 ..表示上一层,上一层的上一层,就  ../..表示)
8.  ls xxx/*.xxx (筛选文件 什么目录下的什么格式文件) 9. ls -lS > out.txt (文件目录输入到 一个文件中)




cd 命令


1. cd ..  (返回上一级)  2.cd  xxx (进入下一级目录)  3.进入带空格文件  必须 ‘test   file ’ 或者 "test  file"再者 “test\  file"


4 .cd ~ (进入  /home)






cat 命令


1.cat  (进入空白模板,可以随意写 ctrl+d 退出)  2. cat  file1 (显示file1文件的内容)


 3.cat  -b  file1 (不计算空行的情况下显示行号) 4. cat  -n  file1 (行数显示,空行也计算)
5.cat -E  file (显示到每行结束部分,并在每行尾部显示$符号。) 6.cat   file1   file2 (显示file1 file2 文件)


文件重定向


1. cat  >  out.txt (终端里面输入的字符保存到一个具体文件中去,会覆盖out.txt之前的内容)
2. cat  >>  out.txt  (不会覆盖之前内容) 3.cat  file1.txt > file2.txt (file1 拷贝到file2) 


  5.cat  file1.txt  file.txt  > file2.txt  (file1 和file拷贝到file2)  






mkdir ( 创建文件夹) make directory


1. mkdir   image  (创建image文件夹)  2.mkdir    image/child (创建image的子文件夹) 3, mkdir  -p   fa/chi  (父目录子目录同时创建)  4。mkdir   -p  fa/{c1,c2,c2} (同时创建多个子目录,不能有空格,隔开) 






  rm   /    rmdir (删除文件/目录)


1.   rmdir -p  a/b/c/d (删除多级空目录) 2 . rmdir   a  (单个文件夹)  


3.rm -r  (强制删除一个目录下所有文件和路径)




cp 命令  copy (复制)


1. cp file1 file2   (file1 拷贝到 file2)  2. cp  file1  dir1 (拷贝到目录下,必须存在该文件夹) 


3.cp  file1.txt  file2.txt   dir1 (拷贝到目录下,必须存在该文件夹) 


4.cp  -i  file1.txt  file2.txt  dir1   (覆盖文件,必须存在该文件夹)


5.cp  -R dir1 dir2   (拷贝文件夹1到文件夹2,必须存在该文件夹  -R必须写!)


6.cp -vR dir1 dir4  (拷贝文件夹1到文件夹4,可以看到变更记录 必须存在该文件夹)






mv 命令 move (剪切)


1. mv   file1.txt   file2.txt  (相当于重命名文件)


2 mv  file1.txt  dir1 (剪切文件到文件夹中)


3. mv  -i  file1.txt  dir1 (文件名重复 是否覆盖)


4. mv  dir1   dir2   (相当于重命名文件夹)
5. mv -v  file3.txt  dir2 (会解释这个命令执行了发生了什么变化)


less 命令 (查看文件内容) 


,less命令一次只会加载一部分文件内容到终端上,而vi编辑器一开始,就把这个大型的文档读入内存,加载特别慢。
less  file3.txt


键盘上的向上和向下箭头,点击一次向下简单,文件内容往下读取一行;点击一次向上箭头,文件内容,往上翻滚一行。


4.page down 和page up


       利用键盘的page down 和page up来进行翻屏操作。点击一下page down,内容就向下翻一屏幕;点击一下page up内容就向上翻一屏,b = pg up   z =pg dn


5.利用g x来翻到第几屏


       默认按下g,代表翻到第一屏。你可以g3,翻到第3屏,这里我没有试试这个文档一共能翻几屏。输入大写G,默认下翻到文件尾部,小写g,回到文件头部。


6.在less打开文件中,如何搜索


       假如你输入g回到文件开始部分,当前提示符是冒号,你输入/这个斜杠,代表进入搜索模式,然后输入你要搜索的字符,例如,输入字母a,然后回车,你会看到命中搜索结果的字符都颜色都白色选中状态标出,这个搜索次序,默认是从上往下搜索。如果想查下一个结果,你就输入n,n表示next。这里n表示下翻查看命中搜索结果,用b表示上翻查看命中搜索结果。


      有时候,你现在在文件尾部,需要从下往上搜索,你可以输入?a,这里a表示你要搜索的关键字。


7. q退出less编辑环境。














more  命令(查看文件内容)


more file3.txt


按 回车 查看下面内容  b返回顶部






touch 命令(创建文件)


1. touch  file.txt  2.可以修改时间戳










nano 命令 (也是一个编辑器)


上面会告诉你各种操作指令






su 和sudo


1.没权限的时候 输入 sudo -i  输入密码


2. su  root   输入密码 进入root    






top 命令 (查看CPU和内存消耗)


1.  top 回车  查看


2. ctrl +c 退出top界面


3. 按 s 设置刷新频率


4. 按 i 不显示闲置的行程










ps 和 kill命令  (process statu查看进程  kill 终结进程)


1. ps  -ux, 查看当前的激活的进程


2. ps  -aux,查看当前所有进程,a是all的意思


3. ps  -U  zhq,查看zhq这个用户有关的进程


4.   ps    -ux      输入 kill   PID编号 结束进程  kill 4383


5.强制杀进程:kill -KILL PID编号 或者 kill -9 PID编号




echo 


1. echo  3123   输出  3213


2.    x=10     echo  $x  输出 10


3.  echo   abc\tdef  输出 adc  def


        echo  adc\ndef   输出 abc


                                           def  






chmod  命令  (修改权限   o 表示others (其他权限组); u 表示(拥有者权限) ;g 表示 group(用户组)  w 表示 write( 写) x 表示(执行)  ; r 表示read(读)) 


ls -l 查看文件/文件夹权限


文件 --------- 表示都没有权限 前三个为u   中间三个为g 最后三个为p  rw-rwx-wx  横杠表示没有


文件夹 d-------- d告诉你是文件夹


chmod  o+x  file.txt     给其他组增加执行权限


chomd  g=wr file.txt 给用户组更该为读写权限


chmod  ug=rwx file.txt  用户拥有者和用户组都变成读写执行权限


chmod  ugo-rwx   file.txt    删除文件file的所有权限


chmod  u+rw,g=rw,o+r file.txt      分别设置三个组不同权限,逗号隔开






数字权限    r w x


        0 0 0 表示没有权限


        1 1 1 表示有权限


根据二进制换算 4+2+1 =7 所以 7为所有权限 6为只有rw权限  5为只有rx权限 以此类推


chmod  000 file.txt      chmod 111 file.txt  chmod 777  file.txt






第一个bash 脚本


which bash 会告诉你 bash的路径  /bin/bash






创建一个 test.sh 文件


打开编辑


顶部写入 #!/bin/bash        表示这个脚本用什么去执行,我们这里是bash


接下来写入


ls -l


mkdir  newdir


保存关闭


在终端命令行执行 此文件 会说没有权限 增加权限 chmod +x test.sh


再执行就可以执行命令了


所以,shell脚本就是很多简单的命令,通过一些控制语句和其他方法去执行复杂任务的命令集合。










which和whatis命令


which告诉你相关程序的路径,whatis就是查询一个命令的含义。man 就是告诉你超级详细命令操作


例如


which firefox  返回    /usr//bin/firefix  


whatis ls      返回 list directory contents






useradd和passwd命令和userdel


useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name


useradd 


3.主要参数


  -c:加上备注文字,备注文字保存在passwd的备注栏中。


  -d:指定用户登入时的主目录,替换系统默认值/home/<用户名>


  -D:变更预设值。


  -e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。


  -f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.


  -g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。


  -G:指定用户所属的附加群组。-m:自动建立用户的登入目录。 -M:不要自动建立用户的登入目录。


  -n:取消建立以用户名称为名的群组。-r:建立系统账号。-s:指定用户登入后所使用的shell。默认值为/bin/bash。


  -u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。




其余这个就看这户人家的 https://blog.youkuaiyun.com/heiyueya/article/details/70136139


passwd


sudo passwd zhq  修改密码


userdel 删用户


sudo useradd  tom -m


 sudo userdel  zhq








group 命令


1.  groups  显示当前用户所在组
2.  cat  /etc/group 查看当前系统所有的组
3. sudo groupadd  groupname  新加组


4. sudo groupdel groupname  删除组


5. sudo gpasswd  -a  username groupname 添加用户到组


6. sudo gpasswd -d username groupname   把用户从组删除






.bashrc 文件和.zashrc文件的作用


.bashrc或者.zashrc作用是用来设置启动一个终端的脚本文件。


vi常用指令


【:w】 保存文件
【:w!】 若文件为只读,强制保存文件
【:q】 离开vi
【:q!】 不保存强制离开vi
【:wq】 保存后离开
【:wq!】 强制保存后离开


i :开始编辑


esc:回到命令模式


移动光标:


  vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。 
  按「ctrl」+「b」:屏幕往“后”移动一页。 按「ctrl」+「f」:屏幕往“前”移动一页。按「ctrl」+「u」:屏幕往“后”移动半页。 按「ctrl」+「d」:屏幕往“前”移动半页。按数字「0」:移到文章的开头。  按「G」:移动到文章的最后。  按「$」:移动到光标所在行的“行尾”。 按「^」:移动到光标所在行的“行首”;按「w」:光标跳到下个字的开头 ;按「e」:光标跳到下个字的字尾 ;按「b」:光标回到上个字的开头 


查看资源相关命令 df / du /free 


1. df 是显示磁盘使用情况    1.1 df   1.2   df   -h  (人类可读)


2. du是显示文件占用磁盘大小 2.1 du   2.2   du  -h


3. free是查看内存使用情况   3.1 free  3.2    free  -h 






watch命令(主要是一个设置刷新时间的命令)
whatis  whatch  查看介绍


1.watch free -m 可以查看默认的时间间隔是2秒 2.watch -n 1 free -m 设置1秒刷新










head 和tail命令(两个查看文件内容命令,有点类似less和more的感觉。一个是查看文件开始10行的内容命令:head;第二个是查看文件末尾最后10行的内容:tail.)


1.  head   file.txt     2.   tail  file.txt  (默认查看10行)  3. head  -n3  file.txt  两个命令都有参数-n表示具体显示多少行

4. tail  -f file.txt  (实时监控这个文件,会有数据写入需要查看最后的,考虑tail -f filename)

5.tail -f file.log|grep -i -E "you find"  实时监控你想看到的内容 i不区分大小写 E可以匹配多个|隔开















find  (查找文件)
1.  sudo   find   /       -name    *.xxx

(/  后面不输 默认在当前环境下查找 输了就在指定目录下查找  )






wc命令 (word count  单词统计) whatis  wc       


1. wc  file.txt 2 .  wc  -c  file.txt   ( 统计字节byte count)    3.  wc   -l  file.txt (统计多少行)  


  4. wc  -w   file.txt  (统计有多少个单词)




cal 命令


1.   cal  或者   cal -1  查看当前日历


2.  ncal 竖向显示日历


3.    cal    (查看年)       cal  2018


4.    cal     (查看某月某年)   cal   2  2018


5.   cal  -3     (查看近期3个月)上个月这个月下个月






date 命令(显示时间)


1.  date  (显示时间)  2018年 04月 11日 星期三 14:47:04 CST 


 2.date +%d/%h/%y (日月年)  11/04/18    日月年 3.  date  +%D  04/11/18 月日年    4. date +%T  14:05:07   5.  %H  %M %S


5.  date -s "xxx-xx-xx" (设置时间)






一次运行多个命令


1.  采用分号(;)分隔多个命令  2.采用两个连接符(&&)  ls; ls -l  








ifconfig(查看网络相关的一个命令,例如可以查看MAC地址,网络地址,网关等信息。)


1. ifconfig  直接查看


lo        Link encap:本地环回  
          inet 地址:127.0.0.1  掩码:255.0.0.0
          inet6 地址: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  跃点数:1
          接收数据包:5511 错误:0 丢弃:0 过载:0 帧数:0
          发送数据包:5511 错误:0 丢弃:0 过载:0 载波:0
          碰撞:0 发送队列长度:0 
          接收字节:979057 (979.0 KB)  发送字节:979057 (979.0 KB)






wlan0     Link encap:以太网  硬件地址 10:08:b1:2d:76:eb  
          inet 地址:192.168.199.100  广播:192.168.199.255  掩码:255.255.255.0
          inet6 地址: fe80::1208:b1ff:fe2d:76eb/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  跃点数:1
          接收数据包:318699 错误:0 丢弃:0 过载:0 帧数:0
          发送数据包:243099 错误:0 丢弃:0 过载:0 载波:0
          碰撞:0 发送队列长度:1000 
          接收字节:384425279 (384.4 MB)  发送字节:39873375 (39.8 MB)


  eth0表示有线网卡1,如果有多个网卡,可能还有eth1,eth2等等。如果是无线的笔记本,可能有wth0,表示无线网卡。 我这里 wlan表示无线

2. ifconfig wlan0 

3.ifconfig wlan0 up /down  (开启/关闭网卡)



tar  解压和压缩包

1.创建tar压缩包 

  tar  -cvf  test.tar   dir    

 (cvf  c 创建  v :verbose就是可以看到这个命中执行发生了什么事情。f是file的意思。 dir 就是要压缩的文件夹或者文件   test.tar 就是压缩后的文件名称)

2.解压 .tar

tar  -xvf  test.tar (x是表示extract,摘取的意思,这里翻译解压更好。)

3.创建tar.gz

tar  -czvf  test.tar.gz  file   (同上)

4.解压  tar.gz

tar -xzvf test.tar.gz



grep命令(意思是找到符合一定规则的字符并打印该行到终端。grep主要是用来在文件中匹配摘取一些按照一定规则的字符串,接下来,举例几个grep常用的使用方法)

1.grep  "something you want to search"  filename1  filename2  (从两个文件中寻找)

2.grep   -n  " something you want to search"  filename  (-n  结果会显示行号)

3.grep -i "options"  filename (-i  忽略大小写)

4.      grep    -v "options"   filename   ( 不包含options的字段    -v表示invert match,不匹配的意思。



netstat (英文单词network status的缩写,就是网络状态查询的意思。)

1.netstat -a  (-a表示按照各个协议,分别统计连接数。按下q退出。)

2.netstat -a | less,和less命令结合使用,较少的查看内容       3.netstat -at | less, t表示TCP

4.netstat -au | less 这里u表示UDP      5.netstat -l | less 这里l表示lisentening,表示监听连接

6.  netstat -s | less 这里s表示static的意思       7.netstat -st | less 表示TCP查询       8.netstat -su | less 表示UDP的查询

9.netstat -p | less 这里p表示PID         10.netstat -n | less                  11.netstat -c | less

常用  

netstat -tnl | grep 443 (查看443端口是否被占用)

netstat -pnl | grep 443 (还可显示出占用本机443端口的进程PID)。

TCP是一种面向连接的、可靠的、基于IP的传输层协议

-a (all)

显示所有选项,默认不显示LISTEN相关

-t (tcp)

仅显示tcp相关选项

-u (udp)

仅显示udp相关选项

-n (numberic)

拒绝显示别名,能显示数字的全部转化成数字。

-l (listen)

仅列出有在 Listen (监听) 的服務状态

-p (program/PID)

显示建立相关链接的程序名pid

-r (route)

显示路由信息,路由表

-e(extend)

 显示扩展信息,例如uid等

-s (static)

按各个协议进行统计

-c (Continus)

每隔一个固定时间,执行该netstat命令。

- x

UNIX套接字连接

-w

RAW

- i         

显示网络接口列表





apt-get  (apt-get来安装和卸载linux的软件包。这里我们通过安装php5来实验。)

1.      apt-get   update  (可以升级下apt-get组件)

2.    sudo apt-get install php5  (下载)

3.   sudo apt-get remove php5 (删除)


!!!!完结!!!!想知道更多功能的 通过  man  XXXX
































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值