自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

給新手的 10 個(gè)有用 Linux 命令行技巧

開發(fā)
我記得我第一次使用 Linux 的時(shí)候,我還習(xí)慣于 Windows 的圖形界面,我真的很討厭 Linux 終端。那時(shí)候我覺得命令難以記憶,不能正確使用它們。隨著時(shí)間推移,我意識(shí)到了 Linux 終端的優(yōu)美、靈活和可用性,說(shuō)實(shí)話,我沒有一天不使用它。今天,我很高興和剛開始接觸 Linux 的人一起來(lái)分享一些有用的技巧和提示,希望能幫助他們更好的向 Linux 過渡,并幫助他們學(xué)到一些新的東西(希望如此)。

我記得我***次使用 Linux 的時(shí)候,我還習(xí)慣于 Windows 的圖形界面,我真的很討厭 Linux 終端。那時(shí)候我覺得命令難以記憶,不能正確使用它們。隨著時(shí)間推移,我意識(shí)到了 Linux 終端的優(yōu)美、靈活和可用性,說(shuō)實(shí)話,我沒有一天不使用它。今天,我很高興和剛開始接觸 Linux 的人一起來(lái)分享一些有用的技巧和提示,希望能幫助他們更好的向 Linux 過渡,并幫助他們學(xué)到一些新的東西(希望如此)。

給新手的 10 個(gè)有用 Linux 命令行技巧

這篇文章希望向你展示一些不需要很高的技術(shù)就可以像一個(gè)高手一樣使用 Linux 終端的有用技巧。你只需要一個(gè) Linux 終端和一些自由時(shí)間來(lái)體會(huì)這些命令。

1. 找到正確的命令

執(zhí)行正確的命令對(duì)你的系統(tǒng)來(lái)說(shuō)非常重要。然而在 Linux 中有如此多的、難以記憶的各種的命令行。那么怎樣才能找到你需要的正確命令呢?答案是 apropos。你只需要運(yùn)行:

# apropos <description>

其中你要用真正描述你要查找的命令的語(yǔ)句代替 “description”。這里有一個(gè)例子:

# apropos "list directory"

dir (1) - list directory contents
ls (1) - list directory contents
ntfsls (8) - list directory contents on an NTFS filesystem
vdir (1) - list directory contents

左邊你看到的是命令,右邊是它們的描述。

2. 執(zhí)行之前的命令

很多時(shí)候你需要一遍又一遍執(zhí)行相同的命令。盡管你可以重復(fù)按你鍵盤上的向上光標(biāo)鍵,但你也可以用 history 命令替代。這個(gè)命令會(huì)列出自從你上次啟動(dòng)終端以來(lái)所有輸入過的命令:

# history

    1  fdisk -l
    2  apt-get install gnome-paint
    3  hostname tecmint.com
    4  hostnamectl tecmint.com
    5  man hostnamectl
    6  hostnamectl --set-hostname tecmint.com
    7  hostnamectl -set-hostname tecmint.com
    8  hostnamectl set-hostname tecmint.com
    9  mount -t "ntfs" -o
   10  fdisk -l
   11  mount -t ntfs-3g /dev/sda5 /mnt
   12  mount -t rw ntfs-3g /dev/sda5 /mnt
   13  mount -t -rw ntfs-3g /dev/sda5 /mnt
   14  mount -t ntfs-3g /dev/sda5 /mnt
   15  mount man
   16  man mount
   17  mount -t -o ntfs-3g /dev/sda5 /mnt
   18  mount -o ntfs-3g /dev/sda5 /mnt
   19  mount -ro ntfs-3g /dev/sda5 /mnt
   20  cd /mnt
   ...

正如你上面看到的,你會(huì)得到一個(gè)你運(yùn)行過的命令的列表。每一行中有一個(gè)數(shù)字表示你在第幾行輸入了命令。你可以通過以下方法重新調(diào)用該命令:

!#

其中要用命令的實(shí)際編號(hào)代替 #。為了更好的理解,請(qǐng)看下面的例子:

!501

等價(jià)于:

# history

3. 使用 midnight 命令

如果你不習(xí)慣使用類似 cd、cp、mv、rm 等命令,你可以使用 midnight 命令。它是一個(gè)簡(jiǎn)單的可視化 shell,你可以在上面使用鼠標(biāo):

給新手的 10 個(gè)有用 Linux 命令行技巧

Midnight 命令

借助 F1 到 F12 鍵,你可以輕易地執(zhí)行不同任務(wù)。只需要在底部選擇對(duì)應(yīng)的命令。要選擇文件或者目錄,按下 “Insert” 鍵。

簡(jiǎn)而言之 midnight 就是所謂的 “mc”。要安裝 mc,只需要運(yùn)行:

$ sudo apt-get install mc        [On Debian based systems]

# yum install mc                 [On Fedora based systems]

下面是一個(gè)使用 midnight 命令器的簡(jiǎn)單例子。通過輸入以下命令打開 mc:

# mc

現(xiàn)在使用 TAB 鍵選擇不同的窗口 – 左和右。我有一個(gè)想要移動(dòng)到 “Software” 目錄的 LibreOffice 文件:

給新手的 10 個(gè)有用 Linux 命令行技巧

Midnight 命令移動(dòng)文件

按 F6 按鈕移動(dòng)文件到新的目錄。MC 會(huì)請(qǐng)求你確認(rèn):

給新手的 10 個(gè)有用 Linux 命令行技巧

移動(dòng)文件到新目錄

確認(rèn)了之后,文件就會(huì)被移動(dòng)到新的目標(biāo)目錄。

4. 在指定時(shí)間關(guān)閉計(jì)算機(jī)

有時(shí)候你需要在下班幾個(gè)小時(shí)后再關(guān)閉計(jì)算機(jī)。你可以通過使用下面的命令在指定時(shí)間關(guān)閉你的計(jì)算機(jī):

$ sudo shutdown 21:00

這會(huì)告訴你在你指定的時(shí)間關(guān)閉計(jì)算機(jī)。你也可以告訴系統(tǒng)在指定分鐘后關(guān)閉:

$ sudo shutdown +15

這表示計(jì)算機(jī)會(huì)在 15 分鐘后關(guān)閉。

5. 顯示已知用戶的信息

你可以使用一個(gè)簡(jiǎn)單的命令列出你 Linux 系統(tǒng)的用戶以及一些關(guān)于它們的基本信息。

# lslogins

這會(huì)輸出下面的結(jié)果:

UID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS
0 root 0 0 Apr29/11:35 root
1 bin 0 1 bin
2 daemon 0 1 daemon
3 adm 0 1 adm
4 lp 0 1 lp
5 sync 0 1 sync
6 shutdown 0 1 Jul19/10:04 shutdown
7 halt 0 1 halt
8 mail 0 1 mail
10 uucp 0 1 uucp
11 operator 0 1 operator
12 games 0 1 games
13 gopher 0 1 gopher
14 ftp 0 1 FTP User
23 squid 0 1
25 named 0 1 Named
27 mysql 0 1 MySQL Server
47 mailnull 0 1
48 apache 0 1 Apache
...

6. 查找文件

查找文件有時(shí)候并不像你想象的那么簡(jiǎn)單。一個(gè)搜索文件的好例子是:

# find /home/user -type f

這個(gè)命令會(huì)搜索 /home/user 目錄下的所有文件。find 命令真的很強(qiáng)大,你可以傳遞更多選項(xiàng)給它使得你的搜索更加詳細(xì)。如果你想搜索超過特定大小的文件,可以使用:

# find . -type f -size 10M

上面的命令會(huì)搜索當(dāng)前目錄中所有大于 10M 的文件。確保不要在你 Linux 系統(tǒng)的根目錄運(yùn)行該命令,因?yàn)檫@可能導(dǎo)致你的機(jī)器 I/O 瓶頸。

我最經(jīng)常和 find 命令一起使用的選項(xiàng)之一是 “exec”,這允許你對(duì) find 命令的結(jié)果運(yùn)行一些操作。

例如,假如我們想查找一個(gè)目錄中的所有文件并更改權(quán)限??梢酝ㄟ^以下簡(jiǎn)單命令完成:

# find /home/user/files/ -type f -exec chmod 644 {} /;

上面的命令會(huì)遞歸搜索指定目錄內(nèi)的所有文件,并對(duì)找到的文件執(zhí)行 chmod 命令。推薦你閱讀 35 個(gè) Linux ‘find’ 命令的使用方法,我肯定你會(huì)發(fā)現(xiàn)這個(gè)命令更多的使用方法。

7. 用一個(gè)命令創(chuàng)建目錄樹

你很可能知道可以使用 mkdir 命令創(chuàng)建新的目錄。因此如果你想創(chuàng)建一個(gè)新的目錄,你可能會(huì)運(yùn)行:

# mkdir new_folder

但如果你想在該目錄下創(chuàng)建 5 個(gè)子目錄呢?運(yùn)行 5 次 mkdir 命令并非是一個(gè)好的選擇。相反你可以類似下面這樣使用 -p 選項(xiàng):

# mkdir -p new_folder/{folder_1,folder_2,folder_3,folder_4,folder_5}

***你會(huì)在 new_folder 中有 5 個(gè)目錄:

# ls new_folder/

folder_1 folder_2 folder_3 folder_4 folder_5

8. 復(fù)制文件到多個(gè)目錄

通常使用 cp 命令進(jìn)行文件復(fù)制。復(fù)制文件通??雌饋?lái)類似:

# cp /path-to-file/my_file.txt /path-to-new-directory/

現(xiàn)在假設(shè)你需要復(fù)制該文件到多個(gè)目錄:

# cp /home/user/my_file.txt /home/user/1
# cp /home/user/my_file.txt /home/user/2
# cp /home/user/my_file.txt /home/user/3

這有點(diǎn)荒唐。相反,你可以用簡(jiǎn)單的一行命令解決問題:

# echo /home/user/1/ /home/user/2/ /home/user/3/ | xargs -n 1  cp /home/user/my_file.txt

9. 刪除大文件

有時(shí)候文件可能會(huì)變得很大。我看過由于缺乏管理技能一個(gè)日志文件就超過 250G 的例子。用 rm 命令可能不足以刪除該文件,因?yàn)橛写罅康臄?shù)據(jù)需要移除。應(yīng)該避免這個(gè)很“笨重”的操作。相反,你可以使用一個(gè)簡(jiǎn)單的方法解決這個(gè)問題:

# > /path-to-file/huge_file.log

當(dāng)然你需要根據(jù)你實(shí)際情況替換路徑和文件名。上面的命令寫一個(gè)空輸出到該文件。用更簡(jiǎn)單的話說(shuō)它會(huì)清空文件而不會(huì)導(dǎo)致你的系統(tǒng)產(chǎn)生大的 I/O 消耗。

10. 在多個(gè) Linux 服務(wù)器上運(yùn)行相同命令

最近我們的一個(gè)讀者在 LinuxSay 論壇提問說(shuō)如何通過 ssh 在多個(gè) Linux 服務(wù)器上執(zhí)行一個(gè)命令。他機(jī)器的 IP 地址是:

10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
10.0.0.5

這里有一個(gè)簡(jiǎn)單的解決方法。將服務(wù)器的 IP 地址寫到文件 list.txt 中,像上面那樣一行一個(gè)。然后運(yùn)行:

# for in $i(cat list.txt); do ssh user@$i 'bash command'; done

上面的命令中你需要用實(shí)際登錄的用戶替換 “user”,用你希望執(zhí)行的實(shí)際命令替換 “bash command”。這個(gè)方法非常適用于通過使用 SSH 密鑰進(jìn)行無(wú)密碼驗(yàn)證,因?yàn)檫@樣你不需要每次都為用戶輸入密碼。

注意取決于你 Linux 系統(tǒng)的設(shè)置,你可能還需要傳遞一些額外的參數(shù)給 SSH 命令。

總結(jié)

上面的例子都很簡(jiǎn)單,我希望它們能幫助你發(fā)現(xiàn) Linux 的優(yōu)美之處,你如何能簡(jiǎn)單實(shí)現(xiàn)在其它操作系統(tǒng)上需要更多時(shí)間的不同操作。

責(zé)任編輯:王雪燕 來(lái)源: linux.cn
相關(guān)推薦

2015-09-29 16:03:43

2014-04-08 15:05:11

LinuxLinux命令行補(bǔ)全命令

2015-05-25 10:40:22

Linux命令行技巧

2017-08-30 19:11:38

Linux命令行tab

2015-06-16 10:36:45

Linux命令行

2017-01-16 15:12:36

Linuxwatch命令命令

2021-07-13 08:20:05

iPad手繪插畫

2017-09-05 08:57:02

Linux命令行技巧

2009-12-23 14:14:09

Linux高級(jí)命令行

2011-03-01 09:17:34

Linux命令行

2015-09-28 11:22:55

命令行補(bǔ)全Linux

2022-06-12 15:32:27

bashLinux

2013-09-10 10:34:49

PowerShell

2021-03-20 21:43:17

LibreOffice命令行開源

2018-03-14 14:27:00

2018-08-03 10:02:05

Linux命令

2012-07-11 13:35:25

UnixLinux

2019-09-09 15:43:29

UnixLinux命令行

2022-03-20 07:07:23

MySQL數(shù)據(jù)庫(kù)命令行工具

2017-03-13 08:50:35

科技新聞早報(bào)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)