91在线一级黄片|91视频在线观看18|成人夜间呦呦网站|91资源欧美日韩超碰|久久最新免费精品视频一区二区三区|国产探花视频在线观看|黄片真人免费三级片毛片|国产人无码视频在线|精品成人影视无码三区|久久视频爱久久免费精品

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linux系統(tǒng)的常用的輔助開發(fā)類命令

Linux中還有一類命令,被時常使用在工作當(dāng)中,如curl、mysql、ssh、vim等,本篇對它們做一個整體介紹。

公司主營業(yè)務(wù):成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、外貿(mào)營銷網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出鳳岡免費(fèi)做網(wǎng)站回饋大家。

使用curl調(diào)試接口

curl是一個多功能的網(wǎng)絡(luò)客戶端命令,可以支持非常多的網(wǎng)絡(luò)協(xié)議,如HTTP、FTP、IMAP、SMTP、SMB、LADP、MQTT等,但大部分情況下,我們將其作為HTTP協(xié)議的客戶端工具來使用,用來調(diào)試HTTP接口,常見用法如下:

# 發(fā)送HTTP請求,默認(rèn)GET方法
curl 'http://localhost/user/get'

# -d指定請求體,有-d參數(shù)后,curl會使用POST方法
# 如果不指定Content-Type,默認(rèn)是application/x-www-form-urlencoded
curl 'http://localhost/user/add' -d 'id=32&name=zhangsan'
# --data-urlencode,將請求體做urlencode編碼后再發(fā)送
curl 'http://localhost/user/add' --data-urlencode 'id=32&name=zhangsan'

# 用-H添加請求頭,如下指定Content-Type是application/json
curl 'http://localhost/user/add' -H 'Content-Type: application/json; charset=UTF-8' -d '{"id":32,"name":"zhangsan"}'

# 使用-X,可以指定請求方法
curl -X DELETE 'http://localhost/user/delete'
curl -X PUT 'http://localhost/user/modify' -d 'id=32&name=zhangsan'



# -G,可以將請求體拼接到url,所以下面兩種調(diào)用方法是等效的
curl -G 'http://localhost/user/add' -d 'id=32&name=zhangsan'
curl 'http://localhost/user/add?id=32&name=zhangsan'

# -i和-I可以顯示響應(yīng)頭,區(qū)別是-i會同時顯示響應(yīng)頭與內(nèi)容,-I只顯示響應(yīng)頭
curl -i 'http://localhost/user/add?id=32&name=zhangsan'

# 查看curl處理細(xì)節(jié)(非常常用)
curl -v http://www.baidu.com
# -s不顯示進(jìn)度提示信息與錯誤信息,-S顯示錯誤信息
curl -sS http://www.baidu.com

# 使用time執(zhí)行curl,只能看到請求整體響應(yīng)時間
$ time curl "http://www.baidu.com" -o /dev/null -s
...
real    0m0.066s
user    0m0.010s
sys     0m0.000s
# 如下,通過-w可以打印請求詳細(xì)耗時情況,包括dns查找耗時,連接建立耗時、收到服務(wù)端響應(yīng)的首字節(jié)耗時、響應(yīng)結(jié)果全部獲取到的耗時,注意時間都是累加的,即相對于命令執(zhí)行那一刻開始
$ curl -w " time_namelookup:%{time_namelookup}s\n time_connect:%{time_connect}s\n time_starttransfer:%{time_starttransfer}s\n time_total:%{time_total}s\n speed_download:%{speed_download}\n http_code:%{http_code}" "http://www.baidu.com" -o /dev/null -s
 time_namelookup:0.009906s
 time_connect:0.035826s
 time_starttransfer:0.062370s
 time_total:0.062406s
 speed_download:38403.000
 http_code:200

另外,curl也可以用來做文件上傳與下載,如下:

# 下載文件,-L讓curl支持重定向,-#顯示進(jìn)度條,-O響應(yīng)體下載為文件
curl -LO -# http://localhost/user/avatar/xxxxx.png  
# wget也經(jīng)常用于下載文件
wget http://localhost/user/avatar/xxxxx.png  

# 上傳文件,-F類似于html里的form,使用-F后,Content-Type默認(rèn)是multipart/form-data,這正是web上常見的文件上傳方式  
curl http://localhost/user/avatar/upload -F 'id=32' -F 'avatar=@./xxxxx.png'

# 上傳文件,這也是一種上傳文件的方式,請求體直接就是文件內(nèi)容,整個傳給服務(wù)器
curl http://localhost/user/avatar?id=32 --data-binary '@./xxxxx.png' -#


# curl也可以訪問ftp服務(wù)器,如下:
# 下載ftp文件
curl -u 用戶名:密碼 ftp://localhost/user/avatar/xxxxx.png -O

# 上傳文件到ftp
curl -u 用戶名:密碼 ftp://localhost/user/avatar/ -T ./xxxxx.png

另外,有時使用curl會出現(xiàn)一些莫名其妙的麻煩,這里分享一下我遇到的幾種,大家留個眼熟:

# 一些網(wǎng)站https證書過期了,curl報(bào)curl: (60) SSL certificate problem: unable to get local issuer certificate
# 可以用-k忽略https證書校驗(yàn)
curl -k https://www.ywnds.com/

# 一些網(wǎng)站網(wǎng)速極慢,導(dǎo)致curl會阻塞很久,需要指定下網(wǎng)絡(luò)超時時間
curl --connect-timeout 2 --max-time 2 http://www.baidu.com

# 一些網(wǎng)站會使用gzip壓縮響應(yīng)內(nèi)容,這會導(dǎo)致curl報(bào)Warning: Binary output can mess up your terminal. Use "--output -" to tell
# 使用--compressed即可,使用gzip -d也可以
curl -H 'Accept-Encoding:gzip' http://www.baidu.com/ --compressed
curl -H 'Accept-Encoding:gzip' http://www.baidu.com/ | gzip -d

# 一些網(wǎng)站任然在使用GBK編碼,這會導(dǎo)致curl結(jié)果亂碼,甚至直接報(bào)Failed writing body錯誤,這時需要使用iconv轉(zhuǎn)換一下編碼
curl -i http://www.xxxxx.com | iconv -f GBK
# 有時,你想在輸出響應(yīng)結(jié)果后再輸出一個換行,避免多次curl的結(jié)果混在一行上
curl -w '\n' http://localhost/health

可以發(fā)現(xiàn),curl幾乎可以定義HTTP請求的方方面面,因此,我經(jīng)常使用curl作為與同事間溝通接口細(xì)節(jié)的工具,我也看到過不少廠商的api文檔,直接使用curl來定義,畢竟對于開發(fā)者來說,任何文檔都沒有代碼解釋得清楚。

使用mysql命令執(zhí)行SQL

mysql命令使用起來比較簡單,如下:

mysql -h localhost -P 3306 -u root -psecret test_db

執(zhí)行上面命令后,就會進(jìn)入SQL交互界面,然后你就可以執(zhí)行SQL語句了,注意指定密碼的方式,-psecret之間不能有空格。

其它比較有用的選項(xiàng)如下:

選項(xiàng) 作用
-A 不加載表名、列名等元數(shù)據(jù),網(wǎng)絡(luò)不好時可加快命令啟動速度,代價(jià)是按Tab鍵無法自動補(bǔ)齊表名與列名了
--default-character-set utf8mb4 指定字符集,避免某些環(huán)境下的亂碼
-e 指定要執(zhí)行的SQL,執(zhí)行完后直接退出,不進(jìn)入命令交互界面
-N 查詢結(jié)果中不展示列名
-t 查詢結(jié)果以表格形式輸出
-B 查詢結(jié)果不以表格形式輸出,字段以tab分隔
-X 查詢結(jié)果以XML形式輸出
-U 安全地執(zhí)行查詢與更新,比如你操作大表時忘記了加limit這種
--pager 指定結(jié)果分頁展示器,默認(rèn)是標(biāo)準(zhǔn)輸出,--pager=less表示使用less作為分頁展示器

這里面比較有意思的是pager,pager可以設(shè)置成任何linux命令,來處理查詢結(jié)果,如下:

$ mysql -h localhost -P 3306 -u root -psecret test_db
# 未設(shè)置pager的情況,查詢結(jié)果直接輸出
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
+-------+------------------------------------+---------------------+---------------------+-------+----------+
| id    | log_info                           | create_time         | update_time         | seq   | add_time |
+-------+------------------------------------+---------------------+---------------------+-------+----------+
|  7706 | DOwhV4Odbuf0wVwyZxrJFbBOEGF0fhf7Ab | 2021-04-18 17:22:48 | 2022-03-11 00:25:49 |  7706 |        0 |
|  8155 | abc                                | 2021-04-18 16:55:42 | 2022-07-18 21:28:29 |  8155 |        0 |
| 14535 | uAXFeCJ3jtxhiQJS26q43MarWL5M       | 2021-04-18 17:06:54 | 2022-06-26 21:19:42 | 14535 |        0 |
| 15303 | abc                                | 2021-04-18 17:30:18 | 2022-05-04 00:38:15 | 15303 |        0 |
| 31933 | cLfKXMYkaIta16kzmyWKFC             | 2021-04-18 17:06:19 | 2022-09-14 20:14:10 | 31933 |        0 |
| 32503 | Rb6yMJ6fvViF28YWN9GA               | 2021-04-18 17:33:59 | 2022-03-14 17:38:04 | 32503 |        0 |
+-------+------------------------------------+---------------------+---------------------+-------+----------+
6 rows in set (0.29 sec)

# 設(shè)置pager為cat -n,為輸出內(nèi)容添加行號
mysql> pager cat -n
PAGER set to 'cat -n'
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
     1  +-------+------------------------------------+---------------------+---------------------+-------+----------+
     2  | id    | log_info                           | create_time         | update_time         | seq   | add_time |
     3  +-------+------------------------------------+---------------------+---------------------+-------+----------+
     4  |  7706 | DOwhV4Odbuf0wVwyZxrJFbBOEGF0fhf7Ab | 2021-04-18 17:22:48 | 2022-03-11 00:25:49 |  7706 |        0 |
     5  |  8155 | abc                                | 2021-04-18 16:55:42 | 2022-07-18 21:28:29 |  8155 |        0 |
     6  | 14535 | uAXFeCJ3jtxhiQJS26q43MarWL5M       | 2021-04-18 17:06:54 | 2022-06-26 21:19:42 | 14535 |        0 |
     7  | 15303 | abc                                | 2021-04-18 17:30:18 | 2022-05-04 00:38:15 | 15303 |        0 |
     8  | 31933 | cLfKXMYkaIta16kzmyWKFC             | 2021-04-18 17:06:19 | 2022-09-14 20:14:10 | 31933 |        0 |
     9  | 32503 | Rb6yMJ6fvViF28YWN9GA               | 2021-04-18 17:33:59 | 2022-03-14 17:38:04 | 32503 |        0 |
    10  +-------+------------------------------------+---------------------+---------------------+-------+----------+
6 rows in set (0.29 sec)

# 設(shè)置pager為grep abc,只查看包含abc的行
mysql> pager grep abc
PAGER set to 'grep abc'
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
|  8155 | abc                                | 2021-04-18 16:55:42 | 2022-07-18 21:28:29 |  8155 |        0 |
| 15303 | abc                                | 2021-04-18 17:30:18 | 2022-05-04 00:38:15 | 15303 |        0 |
6 rows in set (0.29 sec)

# 設(shè)置pager為less分頁器,這樣可以在查詢結(jié)果中翻頁與搜索了
mysql> pager less -iSX
PAGER set to 'less -iSX'
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
+-------+------------------------------------+---------------------+---------------------+-------+----------+
| id    | log_info                           | create_time         | update_time         | seq   | add_time |
+-------+------------------------------------+---------------------+---------------------+-------+----------+
|  7706 | DOwhV4Odbuf0wVwyZxrJFbBOEGF0fhf7Ab | 2021-04-18 17:22:48 | 2022-03-11 00:25:49 |  7706 |        0 |
|  8155 | abc                                | 2021-04-18 16:55:42 | 2022-07-18 21:28:29 |  8155 |        0 |
| 14535 | uAXFeCJ3jtxhiQJS26q43MarWL5M       | 2021-04-18 17:06:54 | 2022-06-26 21:19:42 | 14535 |        0 |
| 15303 | abc                                | 2021-04-18 17:30:18 | 2022-05-04 00:38:15 | 15303 |        0 |
| 31933 | cLfKXMYkaIta16kzmyWKFC             | 2021-04-18 17:06:19 | 2022-09-14 20:14:10 | 31933 |        0 |
| 32503 | Rb6yMJ6fvViF28YWN9GA               | 2021-04-18 17:33:59 | 2022-03-14 17:38:04 | 32503 |        0 |
+-------+------------------------------------+---------------------+---------------------+-------+----------+
(END)

# 設(shè)置pager為md5sum -,這樣可以為查詢結(jié)果生成md5
# 對比md5就能知道當(dāng)前時間段數(shù)據(jù)是否產(chǎn)生了變化
mysql> pager md5sum -
PAGER set to 'md5sum -'
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
40ed2c49a72ff68ba11b97d843bb4da2  -
6 rows in set (0.29 sec)

mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
40ed2c49a72ff68ba11b97d843bb4da2  -
6 rows in set (0.31 sec)

# 先使用cat將第一次查詢結(jié)果保存到文件中,然后使用icdiff對比查詢結(jié)果是否變化
mysql> pager cat > result.txt
PAGER set to 'cat > result.txt'
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';
6 rows in set (0.31 sec)

mysql> pager icdiff result.txt /dev/stdin
PAGER set to 'icdiff result.txt /dev/stdin'
mysql> select * from app_log where create_time >= '2021-04-18' and create_time < '2021-04-18 17:35:00';


如果要恢復(fù)pager的話,只需要輸入nopager并回車即可。

另外,對于mysql的相關(guān)命令行選項(xiàng),是可以永久配置在mysql.cnf配置文件中的,這樣可以避免每次都要在命令行帶上自己常用的選項(xiàng),如下:

$ sudo vim /etc/mysql/conf.d/mysql.cnf
[mysql]
default-character-set=utf8mb4
pager=less -iSFX
safe-updates=TRUE

使用ssh管理主機(jī)

登錄遠(yuǎn)程主機(jī)

一般我們使用ssh來登錄并管理遠(yuǎn)程主機(jī),比如安裝軟件、排查問題等,常見用法如下:

# 登錄到主機(jī)192.168.0.1上,使用work用戶,然后輸入work用戶密碼即可
$ ssh work@192.168.0.1

# -p指定端口,有時主機(jī)為了安全會不使用默認(rèn)的22端口
$ ssh work@192.168.0.1 -p 8022

# 直接在遠(yuǎn)程主機(jī)上執(zhí)行命令
$ ssh work@192.168.0.1 -e 'ping www.baidu.com'
PING www.a.shifen.com (112.80.248.76) 56(84) bytes of data.
64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=1 ttl=54 time=19.1 ms
64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=2 ttl=54 time=19.9 ms 

上傳下載文件

除了遠(yuǎn)程登錄到主機(jī)上,我們經(jīng)常需要上傳下載文件,如下:

# scp和ssh是一個軟件包的,為上傳下載場景定制的命令,用法如下:
# 下載192.168.0.1主機(jī)上/home/work/logs/app.log到本機(jī)的logs目錄下
$ scp work@192.168.0.1:/home/work/logs/app.log ./logs/

# 上傳本機(jī)./logs/app.log文件到192.168.0.1主機(jī)上/home/work/logs/目錄里
$ scp ./logs/app.log work@192.168.0.1:/home/work/logs/

# 實(shí)際上scp的源文件與目標(biāo)文件都可以是遠(yuǎn)程主機(jī)上的,如下:
$ scp work@192.168.0.1:/home/work/logs/app.log work@192.168.0.2:/home/work/logs/app.log


# 實(shí)際上使用ssh也能上傳下載
# 使用ssh下載,其中pv命令是為了查看進(jìn)度,換成cat其實(shí)也可以
$ ssh work@192.168.0.1 'cat /home/work/logs/app.log' | pv > ./logs/app.log

# 使用ssh上傳,其中pv命令是為了查看進(jìn)度,換成cat其實(shí)也可以
$ pv ./logs/app.log | ssh work@192.168.0.1 'cat > /home/work/logs/app.log'

# 對比遠(yuǎn)程文件與本地文件內(nèi)容
$ ssh work@192.168.0.1 'cat /path/to/remotefile' | icdiff /path/to/localfile –

sshfs掛載遠(yuǎn)程目錄

如果你覺得這樣上傳下載好麻煩,可以使用sshfs將遠(yuǎn)程主機(jī)上的目錄,直接掛載到本機(jī)上,這樣你就可以像訪問本機(jī)文件一樣訪問遠(yuǎn)程文件了。

sshfs是基于fuse機(jī)制與ssh協(xié)議實(shí)現(xiàn)的用戶態(tài)文件系統(tǒng),只要是你能用ssh的地方都能用sshfs,并且由于是用戶態(tài)的文件系統(tǒng),因此它并不像NFS那樣需要特殊權(quán)限,只要網(wǎng)絡(luò)連通即可,使用方法如下:

# sshfs掛載目錄
$ sshfs work@192.168.0.1:/home/work/logs /home/work/logs

# 列出文件
$ ls /home/work/logs
app_2022-01-23T12:05:51.log  app_2022-01-23T12:05:53.log  app_2022-01-23T12:05:57.log  app_2022-01-23T12:06:00.log

# 使用ssh列出遠(yuǎn)程目錄,與上面結(jié)果是一樣的
$ ssh work@192.168.0.1 'ls /home/work/logs'
app_2022-01-23T12:05:51.log
app_2022-01-23T12:05:53.log
app_2022-01-23T12:05:57.log
app_2022-01-23T12:06:00.log

也許你會奇怪,為啥上面結(jié)果一個沒換行而另一個換行了,這是因?yàn)閘s會檢測輸出對象是否是終端,如果是終端就會橫排展示,否則豎排展示,不信你可以ls | cat看看。

其實(shí)好多命令都會有這種行為,比如curl默認(rèn)不顯示進(jìn)度,但如果輸出對象不是終端,如curl|cat,就會顯示出進(jìn)度信息。

免密碼登錄

一旦你這樣用著ssh,就會發(fā)現(xiàn)每次都需要輸入密碼好麻煩,好在ssh提供了私鑰認(rèn)證機(jī)制,因此我們可以生成一對公私鑰來避免每次都要輸入密碼,如下:

# 使用ssh-keygen生成ssh密鑰對,使用rsa算法,長度4096,生成的密鑰默認(rèn)~/.ssh目錄下,私鑰叫id_ras,公鑰叫id_ras.pub
ssh-keygen -o -t rsa -b 4096 -C "zhangsan@example.com"

# 使用ssh-copy-id將公鑰上傳到目標(biāo)主機(jī)上
ssh-copy-id -i ~/.ssh/id_rsa.pub work@192.168.0.1
# 沒有ssh-copy-id時,這樣上傳公鑰也是可以的
cat ~/.ssh/id_rsa.pub | ssh work@192.168.0.1 'cat >> ~/.ssh/authorized_keys'

# 測試公鑰是否生效,如果看到Authentication succeeded (publickey).字樣,說明成功
ssh -vT work@192.168.0.1 

是的,相信不少用過github/gitee/gitlab的同學(xué)會感覺到熟悉,其實(shí)github等也是一樣使用ssh密鑰來避免git操作需要輸入密碼的,配置過程是類似的:

  1. 使用ssh-kengen生成密鑰對。
  2. 將公鑰手動拷貝到github的ssh密鑰管理頁面上并保存。
  3. 測試配置成功。

端口轉(zhuǎn)發(fā)

有時,兩個主機(jī)A、C之間網(wǎng)絡(luò)并不互通,但A和B互通,B和C互通,這種情況下,我們可以利用B主機(jī)做一個端口轉(zhuǎn)發(fā),使得主機(jī)A可以訪問主機(jī)C上的網(wǎng)絡(luò)服務(wù)。

能夠?qū)崿F(xiàn)端口轉(zhuǎn)發(fā)的軟件有很多,如iptables、socat、portmap、rinetd等,而ssh也是常見的一個,用法如下:

# ssh本地端口轉(zhuǎn)發(fā),在A機(jī)器上執(zhí)行,會在A機(jī)開啟2001端口,并將此端口數(shù)據(jù)發(fā)到B機(jī),B機(jī)又轉(zhuǎn)發(fā)到C機(jī)的80端口
ssh -fgN -L2001:host_c:80 work@host_b
# ssh遠(yuǎn)端端口轉(zhuǎn)發(fā),在B機(jī)器上執(zhí)行,在A機(jī)開啟22333端口(由A機(jī)sshd服務(wù)打開),將A機(jī)22333端口流量通過B機(jī)(中轉(zhuǎn)機(jī))轉(zhuǎn)到C機(jī)的80端口上
ssh -fgN -R 22333:host_c:80 work@host_a

# ssh遠(yuǎn)端動態(tài)端口轉(zhuǎn)發(fā),在B機(jī)器上執(zhí)行,會在A機(jī)開啟2222端口開放socks代理服務(wù),被代理的數(shù)據(jù)會發(fā)到B機(jī),B機(jī)又轉(zhuǎn)發(fā)到任何B機(jī)能訪問的網(wǎng)絡(luò)服務(wù)上
ssh -fgN -R 2222 work@host_a
# ssh本地動態(tài)端口轉(zhuǎn)發(fā),在A機(jī)器上執(zhí)行,會在A機(jī)開啟2222端口開放socks代理服務(wù),被代理的數(shù)據(jù)會發(fā)到B機(jī),B機(jī)又轉(zhuǎn)發(fā)到任何B機(jī)能訪問的網(wǎng)絡(luò)服務(wù)上
ssh -Nfg -D 2222 work@host_b

# A機(jī)通過本機(jī)socks代理,登錄到C機(jī)
ssh -o ProxyCommand='ncat --proxy 127.0.0.1:2222 --proxy-type socks5 %h %p' work@host_c
# A機(jī)通過B機(jī)ssh登錄C機(jī),其實(shí)就是兩次ssh登錄過程
ssh -t work@host_b 'ssh work@host_c'

為啥會有本地端口轉(zhuǎn)發(fā)與遠(yuǎn)端端口轉(zhuǎn)發(fā)兩種轉(zhuǎn)發(fā)方式呢?

這和允許網(wǎng)絡(luò)連接的方向有關(guān),比如有些情況下,B能連接到A,但A不能連接到B,這時就需要使用遠(yuǎn)端端口轉(zhuǎn)發(fā)了!

總結(jié)

除了這些常用的命令外,Linux中還有很多其它類型的工具命令,比如:

  • vim、emacs:用來編輯文本文件,實(shí)際上你也可以把他們配置成類似idea的IDE,感興趣可參考spacevim、spacemacs。
  • openssl:用來生成密鑰文件、證書文件以及做加密、解密等操作。
  • ffmpeg:可以處理音視頻文件,如mp4轉(zhuǎn)flv、mp4轉(zhuǎn)gif、錄屏、剪裁、觀看直播等。
  • convert:可以進(jìn)行圖片格式轉(zhuǎn)換,如png轉(zhuǎn)jpeg。
  • jp2a:可以將圖片變成字符畫。
  • wkhtmltopdf、xhtml2pdf可以將html轉(zhuǎn)換為pdf,pandoc可以進(jìn)行各種文檔的格式轉(zhuǎn)換。

分享標(biāo)題:Linux系統(tǒng)的常用的輔助開發(fā)類命令
文章起源:http://m.jiaoqi3.com/article/dpjsoep.html