php開發時linux常用命令,php執行命令

本文目錄一覽:

linux常用命令有哪些

Linux常用命令大全100條:

1,echo “aa” 》 test.txt 和 echo “bb” 》》 test.txt

//》將原文件清空,並且內容寫入到文件中,》》將內容放到文件的尾部

2,chmod go+w -R /home/zhangy //給組用戶和其他用戶添加寫的權限

3,tar -tzvf test.tar.gz //列出歸檔內容

4,du -ah //查看文件列表大小

5,du -sh //查看所有文件的大小總和

6,echo ‘1+2’|bc -l //數學運算

7,uname -a //查看linux內核等的一些信息

8,badblocks -s /dev/sda //壞道掃描時顯示進度

9,time command //查看命令的運行時間

10,ls -lrt //按時間的倒序排序

11,rsync -P //同步時顯示進度

12.history -c //清楚歷史命令

13,cd – //返回上次目錄

14,tree //顯示目錄樹

15,umount -n /mnt/hda2 //強制卸載

16,echo ~/ //顯示用戶的home目錄

17,echo $[5*5]e799bee5baa6e997aee7ad94e78988e69d8331333337376265 //算術運算

18,echo $((5*5)) //算術運算

19,eval ls;ps aux|grep httpd //這二個命令都能執行

20,free -m //有MB為單位顯示內存

21,uptime

//顯示系統已經運行了多長時間,它依次顯示下列信息:現在時間、系統已經運行了多長時間、目前有多少登陸用戶、系統在過去的1分鐘、5分鐘和15分鐘內的平均負載

22,加法運算

[root@krlcgcms01 mytest]# let a=34+3;

[root@krlcgcms01 mytest]# echo $a;

23,export //查看所有環境變量

24,echo $PATH //查看單個變量

25,cmp file1 file2 //文件內容比對

26,clear //清屏

27,echo 23423 |awk –re-interval ‘/[0-9]{3,}/’ //如果不加re-interval的話,不顯示

28,cal //得到一個整齊的日曆格式

29,wc -l //統計行數,wc -w 統計單詞

30,echo “AaDCbd23” |tr “[A-Z]” “[a-z]” 大寫變小寫,echo “AaDCbdc23” |tr -c b-d =

將b-d之外的字符串替換成=

31,echo “ADSF” | iconv -f UTF8 -t GBK //把字符由utf8轉成gbk

-f是from和簡寫,-t好像terminal的簡寫

32,cat -n file //內容的前面會顯示行號

33,chattr +i file //只讀,root用戶也沒法對其進行修改

34,lsattr file //查看文件屬性

35,cat /etc/passwd |awk -F: ‘{print $1}’ //查看系統中所有用戶

36,cat /etc/group //查看系統中所有的組

37,groups //查前當前用戶所在的,所有組

38,usermod -g 組名 用戶 //這種方式是覆蓋的方式,用的時候要小心,如果用戶A性於mysql usermod -g php

mysql這樣的話只屬於php了

39,usermod -G 組名 用戶 //這種方式是增加的方式,如果用戶A性於mysql usermod -g php

mysql這樣的話,mysql就屬於2個組了

40,bc //進入數學計算中去

41,umask 003 u權限是7,g權限是7,其他用戶是4,也就是774,777-003=774

42,mkfs -t vfat /dev/hda6 //將移動硬盤裡面的一個分區格式化成vfat格式

43,mount /dev/cdrom /media/cdrom //掛載cdrom

44,getent group 532 //通過組ID,來查找組信息

45,last //登錄成功用戶記錄

46,lastb //登錄不成功用戶記錄

47,dump -S /dev/sda2 //查看一下要備份/dev/sda2所要的容量

48,dump -0j -f /dev/hda2/sda2_bak.dump.bz2 /dev/sda2 //將sda2進行備份並壓縮

49,restore -t -f /dev/hda2/sda2_bak.dump //查看備份信息

50,restore -r -f /dev/hda2/sda2_bak.dump //還原備份

51,fc-list //查看系統中安裝的字體

52,find 。/ -type f -exec grep -q “root” {} ; -exec echo {} ;

//查找目錄下文件所包涵的字符串

53,vmstat 5 //每5顯示一下次系統信息,cpu,memory,i/o等

54,top 後 在shift + P 所佔進程的排序顯示

55,top 後 在shift + M 所佔內存的排序顯示

56,iptraf -g //查看各個接口的流量

57,ostat -d -x /dev/sda2 2 //用iostat查看磁盤/dev/sda2的磁盤i/o情況,每兩秒刷新一次

58, paste -sd ‘|||n’ test //文件的每4行轉換成1行,並用|隔開

59,lsof -i :22 //知道22端口現在運行什麼程序

60,lsof -c abc //顯示abc進程現在打開的文件

61,lsof -p 12 //看進程號為12的進程打開了哪些文件

63,route //查看路由信息

64,ifup //開啟網卡

65,ifdown //關閉網卡

66,route del -net 172.168.0.0 netmask 255.255.0.0 dev eth0 //刪除

172.168這個網段

67,route add -net 172.168.10.0 netmask 255.255.255.0 dev eth0 //增加一個路由

68,netstat -tunl //列出監聽的網絡服務端口

69,netstat -tun //列出已連接的網絡服務端口

70,nmap -sP 172.30.4.0/24 //在這個網段內有多少用戶在我的主機上操作,一個不錯的安全檢查工具

71,vgdisplay //查看系統中的可用空間

72,lvextend -L+20G /dev/tank/part1 //向part1這個分區增加20G的空間

73,lvresize -L-10G /dev/tank/part2 //向part2這個分區減少10G的空間

74,pvdisplay //查看磁盤信息

75,mplayer -loop 10 /mnt/song/music/花兒開了.mp3 //循環播放10遍

76,pacman -S firefox -nd //nd去掉依賴

77,wget -c //斷點下載

78,chroot /mnt/ubuntu //改變根目錄到/mnt/ubuntu

79,ctrl+a //命令行下,光標稱動到開頭

80,ctrl+e //命令行下,光標移動結尾

81,cut -d: -f 1-4 test //用:分割文件,取分割後的1-4列

82,file /home/zhangy/test.php //用於查看文件的一些基本信息

83,touch test.txt //創建一個空文件 text.txt

84,htpasswd -cbd /usr/local/nginx/conf/authfile //創建訪問控制文件

85,df //查看磁盤空間,和當前的磁盤數

86,fdisk -l //查看所有磁盤數

87,alsamixer //進入後,m鍵可以實現靜音

88,killall httpd //把所有httpd進程殺掉

89,killall -9 mysqld_safe //有些進程超級用戶也停止不了,-9是強制刪除

90,mirror /mysql //下載mysql目錄

91,mirror -R /mysql //上傳mysql目錄

92,rmmod pcspkr //關掉tab提示音

93,modprobe pcspkr //開啟tab提示音

94,gpasswd -a zhangy wheel //將zhangy這個用戶添加到wheel這個組

95,dd if=/dev/zero of=/virtual/ubuntu.virt.img bs=1M count=4096

//創建一個4G的IMG鏡像

96,lspic //顯示pci設備

97,lsusb //顯示usb設備

98,history | less //less根more有點像,感覺less用着更舒服點

99,ln -s //如果忘了-s就變成硬鏈接了

100,tar zxvf test.tar.gz -C /home/zhangy //將內容解壓到指定目錄

如何通過Linux命令行使用和運行PHP腳本

在 Linux 命令行中運行 PHP 代碼

PHP的語法和C、Java以及帶有一些PHP特性的Perl變成語言中的語法十分相似,它當下大約正被2.6億個網站所使用,當前最新的穩定版本是PHP版本5.6.10。

PHP是HTML的嵌入腳本,它便於開發人員快速寫出動態生成的頁面。PHP主要用於服務器端(而Javascript則用於客戶端)以通過HTTP生成動態網頁,然而,當你知道可以在Linux終端中不需要網頁瀏覽器來執行PHP時,你或許會大為驚訝。

本文將闡述PHP腳本語言的命令行方面。

1. 在安裝完PHP和Apache2後,我們需要安裝PHP命令行解釋器。

複製代碼 代碼如下:

# apt-get install php5-cli

[Debian 及類似系統]# yum install php-cli

[CentOS 及類似系統]

接下來我們通常要做的是,在 /var/www/html (這是 Apache2 在大多數發行版中的工作目錄)這個位置創建一個內容為 ?php phpinfo(); ? ,名為 infophp.php 的文件來測試(PHP是否安裝正確),執行以下命令即可。

複製代碼 代碼如下:

# echo ‘?php phpinfo(); ?’ /var/www/html/infophp.php

然後,將瀏覽器訪問 ,這將會在網絡瀏覽器中打開該文件。

檢查PHP信息

不需要任何瀏覽器,在Linux終端中也可以獲得相同的結果。在Linux命令行中執行 /var/www/html/infophp.php ,如:

複製代碼 代碼如下:

# php -f /var/www/html/infophp.php

從命令行檢查PHP信息

由於輸出結果太大,我們可以通過管道將上述輸出結果輸送給 less 命令,這樣就可以一次輸出一屏了,命令如下:

複製代碼 代碼如下:

# php -f /var/www/html/infophp.php | less

檢查所有PHP信息

這裡,‘-f‘選項解析並執行命令後跟隨的文件。

2. 我們可以直接在Linux命令行使用 phpinfo() 這個十分有價值的調試工具而不需要從文件來調用,只需執行以下命令:

複製代碼 代碼如下:

# php -r ‘phpinfo();’

PHP調試工具

這裡,‘-r‘ 選項會讓PHP代碼在Linux終端中不帶 和 標記直接執行。

3. 以交互模式運行PHP並做一些數學運算。這裡,‘-a‘ 選項用於以交互模式運行PHP。

複製代碼 代碼如下:

# php -aInteractive shellphp echo 2+3;5php echo 9-6;3php

echo 5*4;20php echo 12/3;4php echo 12/5;2.4php echo

2+3-1;4php echo 2+3-1*3;2php exit

輸入 ‘exit‘ 或者按下 ‘ctrl+c‘ 來關閉PHP交互模式。

啟用PHP交互模式

4. 你可以僅僅將PHP腳本作為shell腳本來運行。首先,創建在你當前工作目錄中創建一個PHP樣例腳本。

複製代碼 代碼如下:

# echo -e ‘#!/usr/bin/php\n?php phpinfo(); ?’ phpscript.php

注意,我們在該PHP腳本的第一行使用 #!/usr/bin/php ,就像在shell腳本中那樣( /bin/bash )。第一行的 #!/usr/bin/php 告訴Linux命令行用 PHP 解釋器來解析該腳本文件。

其次,讓該腳本可執行:

複製代碼 代碼如下:

# chmod 755 phpscript.php

接着來運行它,

複製代碼 代碼如下:

# ./phpscript.php

5. 你可以完全靠自己通過交互shell來創建簡單函數,這你一定會被驚到了。下面是循序漸進的指南。

開啟PHP交互模式。

複製代碼 代碼如下:

# php -a

創建一個函數,將它命名為 addition 。同時,聲明兩個變量 $a 和 $b 。

複製代碼 代碼如下:

php function addition ($a, $b)

使用花括號來在其間為該函數定義規則。

複製代碼 代碼如下:

php {

定義規則。這裡,該規則講的是添加這兩個變量。

複製代碼 代碼如下:

php { echo $a + $b;

所有規則定義完畢,通過閉合花括號來封裝規則。

複製代碼 代碼如下:

php {}

測試函數,添加數字4和3,命令如下:

複製代碼 代碼如下:

php var_dump (addition(4,3));

樣例輸出

複製代碼 代碼如下:

7NULL

你可以運行以下代碼來執行該函數,你可以測試不同的值,你想來多少次都行。將裡頭的 a 和 b 替換成你自己的值。

複製代碼 代碼如下:

php var_dump (addition(a,b));

php var_dump (addition(9,3.3));

樣例輸出

複製代碼 代碼如下:

12.3NULL

創建PHP函數

你可以一直運行該函數,直至退出交互模式(ctrl+z)。同時,你也應該注意到了,上面輸出結果中返回的數據類型為 NULL。這個問題可以通過要求 php 交互 shell用 return 代替 echo 返回結果來修復。

只需要在上面的函數的中 ‘echo‘ 聲明用 ‘return‘ 來替換

替換

複製代碼 代碼如下:

php { echo $a + $b;

複製代碼 代碼如下:

php { return $a + $b;

剩下的東西和原理仍然一樣。

這裡是一個樣例,在該樣例的輸出結果中返回了正確的數據類型。

PHP函數

永遠都記住,用戶定義的函數不會從一個shell會話保留到下一個shell會話,因此,一旦你退出交互shell,它就會丟失了。

linux基本操作命令

linux基本操作命令如下:

1、查看內核版本:uname -a。

2、控制台-圖形界面:init 5或者startx。

3、圖形界面-控制台: init3或者直接註銷。

4、如何查看ip地址:ifconfig。

5、配置ip:ifconfig eth0 ip地址。

6、重啟:reboot 或者 shutdown -r now。

linux常用命令舉例

cd命令這是一個非常基本,也是大家經常需要使用的命令,它用於切換當前目錄,它的參數是要切換到的目錄的路徑,可以是絕對路徑,也可以是相對路徑,如cd/root/Docements#切換到目錄/root/Docementscd./path#切換到當前目錄下的path目錄中。

這是一個非常有用的查看文件與目錄的命令,list之意,它的參數非常多,下面就列出一些我常用的參數吧,如下,l,列出長數據串,包含文件的屬性與權限數據等a,列出全部的文件連同隱藏文件一起列出來d,僅列出目錄本身,而不是列出目錄的文件數據h,將文件容量以較易讀的方式列出來R。

如何通過PHP執行linux命令?

你想問得是php如何執行shell命令把?\x0d\x0a\x0d\x0a可以用system(),exec(),passthru()這三個函數實現\x0d\x0a雖然這三個命令都能執行linux系統的shell命令,但是其實他們是有區別的:\x0d\x0a system() 輸出並返回最後一行shell結果。\x0d\x0a exec() 不輸出結果,返回最後一行shell結果,所有結果可以保存到一個返回的數組裡面。\x0d\x0a passthru() 只調用命令,把命令的運行結果原樣地直接輸出到標準輸出設備上。\x0d\x0a 相同點:都可以獲得命令執行的狀態碼\x0d\x0a例子:system(“ls -al”);\x0d\x0a【使用之前要在php.ini中把safe_mode關閉】

php 執行linux命令呢?

php內置函數:

exec — 執行一個外部程序

passthru — 執行外部程序並且顯示原始輸出

shell_exec — 通過 shell 環境執行命令,並且將完整的輸出以字符串的方式返回

PHP執行linux系統命令的常用函數使用說明

system函數

說明:執行外部程序並顯示輸出資料。

語法:string

system(string

command,

int

[return_var]);

返回值:

字符串

詳細介紹:

本函數就像是

C

語中的函數

system(),用來執行指令,並輸出結果。若是

return_var

參數存在,則執行

command

之後的狀態會填入

return_var

中。同樣值得注意的是若需要處理用戶輸入的資料,而又要防止用戶耍花招破解系統,則可以使用

EscapeShellCmd()。若

PHP

以模塊式的執行,本函數會在每一行輸出後自動更新

Web

服務器的輸出緩衝暫存區。若需要完整的返回字符串,且不想經過不必要的其它中間的輸出界面,可以使用

PassThru()。

實例代碼:

複製代碼

代碼如下:

?php

$last_line

=

system(‘ls’,

$retval);

echo

‘Last

line

of

the

output:

.

$last_line;

echo

‘hr

/Return

value:

.

$retval;

?

exec函數

說明:執行外部程序。

語法:string

exec(string

command,

string

[array],

int

[return_var]);

返回值:

字符串

詳細介紹:

本函數執行輸入

command

的外部程序或外部指令。它的返回字符串只是外部程序執行後返回的最後一行;若需要完整的返回字符串,可以使用

PassThru()

這個函數。

要是參數

array

存在,command

會將

array

加到參數中執行,若不欲

array

被處理,可以在執行

exec()

之前呼叫

unset()。若是

return_var

array

二個參數都存在,則執行

command

之後的狀態會填入

return_var

中。

值得注意的是若需要處理使用者輸入的資料,而又要防止使用者耍花招破解系統,則可以使用

EscapeShellCmd()。

實例代碼:

複製代碼

代碼如下:

?php

echo

exec(‘whoami’);

?

popen函數

說明:打開文件。

語法:int

popen(string

command,

string

mode);

返回值:

整數

詳細介紹:

本函數執行指令開檔,而該文件是用管道方式處理的文件。用本函數打開的文件只能是單向的

(只能讀或只能寫),而且一定要用

pclose()

關閉。在文件操作上可使用

fgets()、fgetss()

fputs()。若是開檔發生錯誤,返回

false

值。

實例代碼:

複製代碼

代碼如下:

?

$fp

=

popen(“/bin/ls”,”r”

);

?

PHP監控linux服務器負載

在實際項目的應用中,我們由於各種條件的現實,利用PHP來實現服務器負載監控將是一種更為靈活的方式。

由於Web

Server以及PHP的實現方式所限,我們在現實環境中很難利用PHP去調用一些Linux中需要root權限才能執行的程序,對此,我從網上找到另外一種方式來繞開這個限制。首先先寫個c程序中轉調用系統命令,然後用PHP去執行此c程序。

c程序

首先寫個c文件,比如/usr/local/ismole/w.c

複製代碼

代碼如下:

#includestdio.h

#includestdlib.h

#includesystypes.h

#includeunistd.h

int

main()

{

uid_t

uid

,euid;

//note

獲得當前的uid

uid

=

getuid();

//note

獲得當前euid

euid

=

geteuid();

//note

交換這兩個id

if(setreuid(euid,

uid))

perror(“setreuid”);

//note

執行將要執行linux系統命令

system(“/usr/bin/w”);

return0;

}

編譯該文件gcc

-o

w

-Wall

w.c,這時會在當前目錄下生成程序w。改變此程序的屬主chmod

u+s

./w。

PHP執行

文件內容如下,放在web目錄下,訪問就會輸出當前的服務器負載情況。

複製代碼

代碼如下:

?php

/*

More

Original

PHP

Framwork

Copyright

(c)

2007

2008

IsMole

Inc.

$Id:

serverMonitor.php

408

2008-12-02

08:07:40Z

kimi

$

*/

//note

key的驗證過程

if($key

!=

$authkey)

{

//

exit(‘key

error);

}

$last_line

=

exec(‘/usr/local/ismole/w’,

$retval);

$returnArray

=

explode(“load

average:

“,

$retval[0]);

$returnString

=

$returnArray[1];

echo

$returnString; 

 按照上面的實例,我們可以用PHP來做任何我們想執行的Linux系統命令,SVN更新,服務器監控,備份,恢復,日常維護等等。

原創文章,作者:AEJI,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/144108.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
AEJI的頭像AEJI
上一篇 2024-10-24 15:27
下一篇 2024-10-24 15:27

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python命令大全及說明

    Python是一種高級編程語言,由Guido van Rossum於1989年底發明。它具有良好的語法結構和面向對象的編程思想,具有簡潔、易讀、易學的特點,是初學者以及專業開發人員…

    編程 2025-04-29
  • Git config命令用法介紹:用正確的郵箱保障開發工作

    本文將詳細介紹如何使用git config命令配置Git的全局和本地用戶信息,特別是如何正確使用用戶郵箱,保障Git操作的正常進行。 一、git config命令介紹 Git中的每…

    編程 2025-04-29
  • Python SSH 遠程執行命令

    Python SSH 遠程執行命令是指在一個服務器上執行遠程另一個服務器上命令。如果你需要在本地機器上執行命令,或者在遠程機器上執行本地命令,你都可以使用 SSH。在 Python…

    編程 2025-04-29
  • 剖析命令執行函數

    在編程開發過程中,命令執行函數是非常常見的一個概念。它是指接受一個命令字符串,並將其解析執行,返回相應的結果或錯誤信息的函數。本文將從多個方面對命令執行函數進行詳細的闡述,包括其定…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • 如何使用Python執行Shell命令並獲取執行過程信息

    本文將介紹如何使用Python執行Shell命令並獲取執行過程信息。我們將從以下幾個方面進行闡述: 一、執行Shell命令 Python內置的subprocess模塊可以方便地執行…

    編程 2025-04-28
  • Python中獲取用戶輸入命令的方法解析

    本文將從多個角度,分別介紹Python中獲取用戶輸入命令的方法,希望能夠對初學者有所幫助。 一、使用input()函數獲取用戶輸入命令 input()是Python中用於獲取用戶輸…

    編程 2025-04-27
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27

發表回復

登錄後才能評論