Linux 常用命令大全

本贴最后更新于 1938 天前,其中的信息可能已经时移世异

命令--cd

branda这个用户的主文件夹是/home/branda,而root的主文件夹是
/root/,此时我以root的身份登录linux系统
1 cd ~branda(代表去branda这个用户的主文件夹)
2 cd ~(表示回到自己的主文件夹)
3 cd(也表示回到自己的主文件夹)
4 cd ..(表示去到目前的上层目录,此处是/root的上层目录)
5 cd -(表示回到刚才的那个目录,即/root)

命令--ifconfig、ls、reboot

查看ip:ifconfig
查看当前目录下的文件:ls
查看文件下的隐藏文件:ls -la
参数:-l :文件具体属性
               -a:隐藏属性
重启命令:shutdown -r now 或者 reboot
关机命令:shutdown -h now

命令--mkdir

创建新目录:mkdir
创建一个名为test的目录:mkdir test
创建多层目录:mkdir -p test1/test2/test3
新建权限为rwx--x--x的目录:mkdir -m 711 test
一次性创建四个文件夹:mkdir /opt/{a,b} _ {c,d}(结果可创建以下
四个文件夹:a_c、b_c、b_d,a_d

命令--cp

复制命令:cp 源文件 目标文件
想把文件test中的内容复制到/opt/wj中:cp -r test /opt/wj
参数:
-i: 若目标文件已经存在,在覆盖时会先询问操作的进行
 -p:连同文件的属性一起复制过去,而非使用默认属性
 -r:递归持续复制,用于目录的复制行为

命令--mv

剪切命令:mv(打包备份时会用到)
把当前文件夹wj剪切到home中:mv  wj  /home
重命名命令:mv
把文件夹a重命名为hello:mv a hello
例:把文件夹b剪切到/opt下,并重命名为hello
   mv  b  /opt /hello

命令--rm

删除命令:rm
递归删除文件夹:rm -r hello
强制删除文件夹:rm -fr hello
删除文件:rm -i abc.txt
参数:-f :强制
     -r :递归删除
     -i : 互动模式,在删除前会询问用户是否操作

命令--touch、find

创建文件:touch
创建一个文件:touch 文件名
同时创建两个文件:touch 文件名1   文件名2
查找文件命令:find
按文件名搜索:find  路径  -name  文件名
例:find  /opt  -name  wj(寻找opt下文件名为wj的文件)
按文件大小搜索:find  路径  -size  文件名

命令--find、grep

查找branda开头的文件:find  路径  -name  branda*
查找包含branda的文件:find  路径  -name  *branda*
查找文件内容命令:grep
从文件ab.txt中查找a:grep  a  ab.txt
从文件ab.txt和bc.txt中查找success:grep  success  ab.txt  bc.txt
文件abc.txt中有几个abc:grep  -c  abc  abc.txt
文件abc.txt中有几个abc(包括Abc,忽略大小写)
       grep  -i  abc  abc.txt

命令--grep、diff、cmp

查找除了abc之外的其他内容:grep  -v  abc  abc.txt
比较文本文件差别的命令:diff
例:找到abc.txt和abc.txt.back的区别
   diff  abc.txt  abc.txt.back
   比较非文本文件的区别:cmp
例:cmp  abc.txt  abc.txt.back

命令--chmod

修改权限命令:chmod
权限讲解:
drwxr-xr-x
d:代表目录
r:读权限
w:写权限
x:执行权限

权限含义:
rwx:代表拥有者的权限(用字母u表示)
r-x:没有写的权限,代表所在组的权限(用字母g表示)
r-x:其他人的权限(用字母o表示)
有两种方法可以表示权限:数字和字母
具体二进制和十进制的转换,后期做详细介绍
r--4
w--2
x--1

举例:
例:把文件a.txt的权限设置为363:chmod  363  a.txt
例:把文件a.txt的权限设置为u+x:chmod  u+x a.txt
例:所有都加可执行权限x:chmod  a+x  a.txt
例:给文件加权限:chmod  u=wx, g=rw ,o=w a.txt

命令--chgrp

chgrp:改变文件所属用户组
假设用户是以root的身份登录linux系统的,在主文件夹下有一个install.log的文件,如何改变此文件的用户组呢?假设我们已经知道/etc/group里面存在一个名为users的用户组
命令:chgrp users install.log  (文件的用户组被改变成users了)

命令--chown

chown:改变文件所有者
注意:用户必须是已经存在于系统中的账号,也就是在/etc/passwd这个文件中有记录的用户名称才能改变
命令格式:chown [-R] 账号名称  文件或者目录
例子:将install.log的所有者改为bin这个账号
chown  bin  install.log

命令--alias、netstat、lsof

起别名的命令:alias
例:给命令ls -la起个别名为ll:alias ls -la = 'll'

网络命令netstat
例:查看系统是否有程序占用了22端口:netstat  -an | grep 22
例:查看当前系统启用了哪些端口号:netstat  -lnp
例:查看22端口号程序是否启动:lsof  -i : 22(lsof表示list open file
参数i用以显示符合条件的进程情况)

命令--网络命令

远程连接命令(不安全):telnet  IP地址(前提是主机服务器要开)

修改IP地址:vi/etc/sysconfig/network-scripts/ifcfg-eth0(重启后也不会变)

暂时修改IP地址:ifconfig  eht0  新的IP地址(重启后会消失)

重启网卡:service  network  restart

显示资源使用量:top

看内存:free

命令--进程命令

显示所有进程的详细信息:ps  -ef
UID:用户
CMD:进程名
PID:进程号码(子进程)
PPID:父进程

结束进程命令:kill 
例 强制结束进程3599:kill  -9  3599

查看谁连接了本机电脑:who

命令--打包和解压缩命令

查看系统磁盘使用情况:df  -h

查看文件大小:du  -shc  文件名(显示大小及文件名)
例:查看当前目录下所有的文件:du  -shc*

压缩/解压缩文件命令:zip和tar
例:先压缩文件install.log,再解压缩文件install.log
zip  ysb.zip  install.log(压缩文件install.log)
rm  -fr  install.log(删除文件install.log)
unzip  ysb.zip(解压缩,解压后会看到文件install.log)

例:先压缩文件install.log,再解压缩
1)tar  -zcvf  tarbao.tar.gz  install.log(压缩文件install.log)
参数:
-z:透过gzip的支持进行压缩
-c:建立打包档案
-v:显示详细信息
-f:后面要立刻被处理的档案名
2)删除install.log:rm  -fr  install.log     
3)解压:tar  -zxvf  tarbao.tar.gz(文件名.tar.gz)

命令-新建用户

关于增加用户
1)新建一个用户时,指定家目录
useradd  -md  /home/branda  -g  branda  -s /bin/bash/branda
注释:即在创建branda时,给branda指定登录目录,即在home下的branda,“-g  branda”表示属于branda这个组;“-s /bin/bash branda”指定用户所使用的shell

命令--删除用户

关于删除用户
userdel  用户名
有三种情况
1)用户完全新建,比如新建一个branda,在新建branda的同时,系统自动设置以下三样东西:
家目录:/home/branda
所属组:/etc/group
密码:/etc/passwd
若删除branda,以上三样东西都会消失
2)若在新建用户的时候指定了组,比如:useradd  -g  root  branda
useradd  branda时,只有/etc/passwd会消失
3)若想家目录branda消失:userdel  -r  branda


命令--scp

将本机文件复制到远程服务器上
scp /home/administrator/news.txt root@192.168.6.129:/etc/squid

/home/administrator/      本地文件的绝对路径

news.txt                  要复制到服务器上的本地文件

root                      通过root用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

192.168.6.129             远程服务器的ip地址(也可以使用域名或机器名)

/etc/squid                将本地文件复制到位于远程服务器上的路径

将远程服务器上的文件复制到本机
scp remote@192.168.3.56:/usr/local/sin.sh /home/administrator

remote                   通过remote用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

192.168.3.56             远程服务器ip地址

/usr/local/sin.sh        欲复制到本机的位于远程服务器上的文件

/home/administrator      将远程文件复制到本地的绝对路径




  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    923 引用 • 936 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...