常用Linux Shell指令

stat [filename]

显示指定文件的详细信息,比ls更详细

top

动态显示当前耗费资源最多进程信息

ps

显示瞬间进程状态 ps -aux

du

查看目录大小 du -h /home带有单位显示目录信息

df

查看磁盘大小 df -h 带有单位显示磁盘信息

man

命令不会用了,找男人  如:man ls

shutdown

  • -r             关机重启
  • -h             关机不重启
  • now          立刻关机

halt

关机

reboot

重启

|

将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。

  • grep -r "close" /home/* | more  在home目录下所有文件中查找,包括close的文件,并分页输出。

tar

  • tar -zcvf /home/abc.tar.gz /home/abc     打包,并用gzip压缩
  • tar -zxvf /home/abc.tar.gz 用gzip解壓縮

chown

  • sudo chown [-R] owner[:group] FileDirectory
  • sudo chown root:root jdk-7u21-linux-i586.tar.gz : 以jdk-7u21-linux-i586.tar.gz为例。切換用户root,组root

iptables -L 查看防火墙设置

route -n 查看路由表

netstat

  • netstat -lntp 查看所有监听端口
  • netstat -antp 查看所有已经建立的连接
  • netstat -s 查看网络统计信息进程

crontab -l

查看当前用户的计划任务服务

chkconfig –list

列出所有系统服务

文件基本權限

R W X
可執行
4 2 1

jdk-7u21-linux-i586.tar.gz文件的权限为-rw-rw-r

-rw-rw-r一共十个字符,分成四段。

  • 第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

  • 第二三四个字符“rw-”表示当前所属用户的权限。所以用数值表示为4+2=6

  • 第五六七个字符“rw-”表示当前所属组的权限。所以用数值表示为4+2=6

  • 第八九十个字符“r”表示其他用户权限。所以用数值表示为2

所以操作此文件的权限用数值表示为662

例如:有一个文件filename,权限为“-rw-rx” ,将权限值改为"-rwxrw-r-x",用数值表示为765

  • sudo chmod u+x g+w o+r  filename

上面的例子可以用数值表示

  • sudo chmod 765 filename

Redirect stderr to stdout (&1), and then redirect stdout to a file:

command >out 2>&1
e.g. ls /usr/share/doc >out.txt 2>&1

#!/bin/bash的作用 ?

#!/bin/bash是shell指令碼的第一行,稱為釋伴(shebang)行。

這裏#符號叫做hash,而! 叫做 bang。它的意思是命令通過 /bin/bash 來執行。

如何讓 shell 就指令碼得到來自終端的輸入?

read命令可以讀取來自終端(使用鍵盤)的資料。read命令得到使用者的輸入並置於你給出的變數中。例子如下:

# vi /tmp/test.sh 
#!/bin/bash 
echo ‘Please enter your name’ 
read name
echo 「My Name is $name」  
# ./test.sh
Please enter your name  LinuxTechi  
My Name is LinuxTechi  

如何執行算術運算 ?

兩種方法來執行算術運算:

  1. 使用expr命令(# expr 5 + 2)
  2. 用一個$[表示式] 例如: test=$[16 + 4]

在shell指令碼如何定義函式呢 ?

式是擁有名字的程式碼塊。當我們定義程式碼塊,我們就可以在我們的指令碼呼叫函式名字,該塊就會被執行。

$ diskusage () { df -h ; } 

Reference:
https://www.cnblogs.com/ccy1106/p/6637661.html
https://itw01.com/VW7XEFX.html

Select a repo