天天看点

Linux 命令大全文件管理命令目录命令权限管理命令文件搜索命令用户管理命令压缩解压缩命令网络命令关机重启命令yum常用命令

文件管理命令

  • cat命令
cat :查看文件内容            
-n:带行号
  • ls命令

ls :查看文件

-l 以列表形式查看

-h 以一种人性化的方式查看,也是文件的大小以合适的单位显示

-a 查看所有文件,包括隐藏文件

-i 显示出文件的i节点号

  • touch命令
touch :创建文件 可以一次创建多个文件,以空格隔开
  • more命令

more:分页查看文件内容

  进入浏览模式后:

  f或者空格:下一页

  按 b 键就会往回翻页

  enter:一行一行往下翻

  q:退出

  • less命令

less:查看文件内容

  空格翻页

  回车换行

  pageup:上一页

  pagedown:下一页

  上箭头:向上翻

  下箭头:向下翻

  /搜索词 n向下找

  • head命令
-n 文件名 :查看文件前n行。缺省-n显示前10行
  • tail命令
-n 文件名 :查看文件的末尾几行
  • ln:链接命令

  -s创建软连接

  硬链接和cp -p的区别是硬链接会同步更新

  源文件如果丢失,硬链接依然存在。

  硬链接和源文件的i节点相同。

  硬链接不能夸分区,软连接可以跨分区。

  硬链接不可以链接目录,链接可以

  软连接文件具有的权限是ugo都是rwx

目录命令

  • mkdir命令

mkdir: 创建目录

  -p : 递归的创建目录 也就是可以创建多层目录

  一次创建多个目录: mkdir {a,b,c,d,e,f}

  一次创建 a b c d e f多个目录。

  • rmdir
    rmdir:删除一个空文件夹
  • cp

cp:复制文件或者文件夹

-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。

-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。

-f:覆盖已经存在的目标文件而不给出提示。

-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。

-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。

-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。

-l:不复制文件,只是生成链接文件。

  • mv 命令
mv: 命令用来为文件或目录改名、或将文件或目录移入其它位置
  • rm命令

rm:命令用于删除一个文件或者目录。

-i 删除前逐一询问确认。

-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

-r 将目录及以下之档案亦逐一删除。

删除当前目录下的所有文件及目录,并且是直接删除,无需逐一确认命令行为:

rm -rf 要删除的文件名或目录

权限管理命令

  • chmod命令
chmod:修改文件或目录的权限,只有root和所有者可以更改
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。           
其他参数说明:
-c : 若该文件权限确实已经更改,才显示其更改动作
-f : 若该文件权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本           

实例

将文件 file1.txt 设为所有人皆可读取 :

chmod ugo+r file1.txt

chmod a+r file1.txt

将文件 file1.txt 与 file2.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :

chmod ug+w,o-w file1.txt file2.txt

将 ex1.py 设定为只有该文件拥有者可以执行 :

chmod u+x ex1.py

将目前目录下的所有文件与子目录皆设为任何人可读取 :

chmod -R a+r *

此外chmod也可以用数字来表示权限如 :

chmod 777 file

语法为:

chmod abc file

其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

r=4,w=2,x=1

若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。           

chmod a=rwx file

效果相同

chmod ug=rwx,o=x file

chmod 771 file

若用chmod 4755 filename可使此程序具有root的权限

  • chown命令

chown:更改文件所有者,只有root可以更改

chown root a.txt//把a.txt更改为root所有

  • chgrp命令

chgrp:更改所属组

  chgrp lambrother fengjie //把fengjie的所属组更改为lambrother

文件搜索命令

  • find命令
查看这个链接https://blog.51cto.com/8043410/2053767
  • which命令

which :查找命令的目录以及别名

  which 命令

用户管理命令

  • useradd命令

useradd: 添加用户

  useradd 用户名

  • passwd命令

passwd: 修改用户密码

  passwd 用户名

  • who命令
who:查看当前的账户 显示的格式为: 登录用户名 登录终端(tty:本地登录 pts:远程终端) 登录时间 ip地址
  • w命令
w:查看更详细的用户登录信息。

压缩解压缩命令

  • .gz格式

  压缩:gzip 文件名 只能压缩文件不能压缩目录,压缩完源文件也不见了

  解压缩:gunzip/gzip -d 压缩包名称

  • tar格式

压缩文件 非打包

#touch a.c 创建a.c文件

#tar -czvf test.tar.gz a.c //压缩 a.c文件为test.tar.gz

a.c

列出压缩文件内容

#tar -tzvf test.tar.gz

-rw-r--r-- root/root 0 2010-05-24 16:51:59 a.c

解压文件

#tar -xzvf test.tar.gz

  • zip格式

zip 命令用于压缩文件。

zip 是个使用广泛的压缩程序,压缩后的文件后缀名为 .zip

网络命令

  • write命令

    write:给在线用户发送信息,用户不在线不行。以Ctrl+D保存

      write 用户名

  • wall命令

wall:给所有用户名发送信息

  wall 要发送的信息

  • ping命令

ping:测试网络连通性

  ping ip地址

  -c 要ping的次数

  • ifconfig命令

ifconfig:直接回车查看当前网卡信息

  

 ifconfig 网卡名 ip地址 临时修改网络ip

ifconfig th0:0 192.168.1.100 netmask 255.255.255.0给th0这个网卡新添加一个ip

 

  • ifdown命令

ifdown th0

  禁用th0这块网卡

  • ifup命令

ifup th0

  开启th0这块网卡

  • last命令
last:统计计算机所有用户登录的时间信息,以及重启信息
  • lastlog命令

lastlog:所有用户最后一次登录的时间

  -u 用户的uid 查看指定用户的登录信息。

  • traceroute命令

traceroute:显示数据包到主机间的路径

  traceroute 要探测的地址.

  -n 使用ip而不使用域名

  • nslookup命令

yum -y install bind-utils #安装该bind-utils软件包

nslookup www.baidu.com 查看百度的ip地址

  • netstat命令

netstat:显示网络相关信息

  -t :tcp协议

  -u :udp协议

  -l:监听

  -r:路由

  -n:显示ip地址和端口号

-i :显示网卡列表

  netstat -tlun:查看本机监听的端口

  netstat -an:查看所有的监听信息

  netstat -rn :查看路由表,即网管

  • wget命令

wget 文件地址

  下载文件

  • telnet命令

telnet 域名或ip

  远程管理与端口探测

  如: telnet 192.168.2.3:80

    探测192.168.2.3是否开启了80端口

关机重启命令

  • shutdown命令
shutdown:这个关机命令更安全一些,不推荐使用其他关机命令。

#shutdown -h now 立即关机

#shutdown -h 10 指定 10 分钟后关机

#shutdown -r now 重新启动计算机

#shutdown-c:取消上次的关机命令

  • 重启命令
init 6           
   reboot
  • 关机命令
init 0
      poweroff           
  • 系统运行级别:

        0 关机

        1 单用户 类似windows安全模式

        2 不完全多用户,不含nfs服务

        3 完全多用户

        4 未分配

        5 图形界面

        6 重启

      可以通过查看/etc/inittab来查看系统启动的运行级别

      runlevel:查看当前的运行级别

yum常用命令

  • yum 语法
yum [options] [command] [package ...]

   options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。
   command:要进行的操作。
   package操作的对象。           
  • 1.列出所有可更新的软件清单命令:yum check-update

    2.更新所有软件命令:yum update

    3.仅安装指定的软件命令:yum install <package_name>

    4.仅更新指定的软件命令:yum update <package_name>

    5.列出所有可安裝的软件清单命令:yum list

    6.删除软件包命令:yum remove <package_name>

    7.查找软件包 命令:yum search <keyword>

    8.清除缓存命令:

    yum clean packages: 清除缓存目录下的软件包

    yum clean headers: 清除缓存目录下的 headers

    yum clean oldheaders: 清除缓存目录下旧的 headers

    yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers

  • 实例 1
    **安装 pam-devel**           
[root@www ~]# yum install pam-devel
Setting up Install Process
Parsing package install arguments
Resolving Dependencies  <==先检查软件的属性相依问题
--> Running transaction check
---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be updated
--> Processing Dependency: pam = 0.99.6.2-4.el5 for package: pam-devel
--> Running transaction check
---> Package pam.i386 0:0.99.6.2-4.el5 set to be updated
filelists.xml.gz          100% |=========================| 1.6 MB    00:05
filelists.xml.gz          100% |=========================| 138 kB    00:00
-> Finished Dependency Resolution
……(省略)           
  • 实例 2
    **移除 pam-devel**           
[root@www ~]# yum remove pam-devel
Setting up Remove Process
Resolving Dependencies  <==同样的,先解决属性相依的问题
--> Running transaction check
---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Removing:
 pam-devel               i386       0.99.6.2-4.el5   installed         495 k

Transaction Summary
=============================================================================
Install      0 Package(s)
Update       0 Package(s)
Remove       1 Package(s)  <==还好,并没有属性相依的问题,单纯移除一个软件

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing   : pam-devel                    ######################### [1/1]

Removed: pam-devel.i386 0:0.99.6.2-4.el5
Complete!           
  • 实例 3
    利用 yum 的功能,找出以 pam 为开头的软件名称有哪些?           
[root@www ~]# yum list pam*
Installed Packages
pam.i386                  0.99.6.2-3.27.el5      installed
pam_ccreds.i386           3-5                    installed
pam_krb5.i386             2.2.14-1               installed
pam_passwdqc.i386         1.0.2-1.2.2            installed
pam_pkcs11.i386           0.5.3-23               installed
pam_smb.i386              1.1.7-7.2.1            installed
Available Packages <==底下则是『可升级』的或『未安装』的
pam.i386                  0.99.6.2-4.el5         base
pam-devel.i386            0.99.6.2-4.el5         base
pam_krb5.i386             2.2.14-10              base           
  • du命令
du命令:用于显示目录或文件的大小。du会显示指定的目录或文件所占用的磁盘空间。

    du -sh 文件名      -s或--summarize 仅显示总计。-h或--human-readable 以K,M,G为单位,提高信息的可读性。           
  • ps命令
ps命令用于显示当前进程 (process) 的状态。           

ps -u root //显示root进程用户信息

ps -A 显示进程信息

ps -ef //显示所有命令,连带命令行

  • top命令
top命令用于实时显示 process 的动态。
  • lsof -Pti :8000
      通过端口号获得进程pid
  • kill -9 pid
      杀死指定pid的进程,强行杀死。
  • history
      查看历史命令
  • 执行历史命令

      !! 执行上一条命令

      !n 执行历史命令的中第n条

      !-n 执行导数第n条

      !string 执行以string开头的历史命令行

      !?string? 执行包含string的历史命令行

  • alias

      给命令起别名

      alias 命令='别名'

      alias -p 查看已存在的别名

  • unlias

      取消别名

      unlias name

  • cal
  • ssh
    ssh [email protected] "ifconfig"