一、管理輸入輸出
1、輸出
在linux系統中,正確的輸出編號為1,錯誤輸出編號為2。
用普通使用者student執行"find /etc -name passwd"命令,結果如下圖:
因為studnet的許可權問題,該命令輸出為兩部分:劃線部分為正確輸出,其餘為錯誤輸出。
在工作中有時只需要正確輸出,有時只需要錯誤輸出,所以用重定向輸出來控制輸出內容:
find /etc -name passwd >file,表示將正確輸出匯入file檔案中,只顯示錯誤輸出;
find /etc -name passwd 2>file,表示將錯誤輸出匯入file檔案中,只顯示正確輸出;
find /etc -name passwd &>file,表示將正確輸出和錯誤輸出全部定向輸出至file檔案,此時shell中不顯示內容;
注意:>,2>,&>,都會覆蓋原檔案內容,所以》file命令可以清除file檔案:
若不想在重定向時清除file檔案的內容,則可用">>,2>>,&>>"來實現,表示在file檔案尾部追加內容。
注意:echo表示輸出命令,類似於c語言中printf命令。
2、| :管道,管道的作用是將前一條命令的輸出當做後一條命令的輸入:
ls命令為檢視/bin目錄中的內容,wc為統計個數,管道將ls命令的輸入給wc命令統計個數,整體輸出為1582。
圖中find命令中的錯誤輸出無法通過管道所以只能顯示在shell中,而 正確的兩條輸出傳遞給了wc命令,輸出為2,即圖中左下角。
若要讓錯誤輸出通過管道,可以使用「2>&1」將錯誤輸出轉換為正確輸出通過管道,如下:
3、tee:表示複製輸出到指定位置。
date |tee file 命令表示將date命令的輸出通過管道傳遞給tee並將輸出複製儲存於file檔案中。
二、vim
1、vim異常退出:":q!"強行退出或者在vim命令模式下直接關掉shell。
具體如下:
圖中畫圈部分即為異常退出再進入時的按鍵選項。
2、在vim命令模式下可以配置vim的工作方式。
(1):set nu :新增行號
(2):set nonu :取消行號
(3):set mouse :新增滑鼠選項,即可用滑鼠移動游標
(4):set cursorline :設定行線
注意:以上的設定都為臨時設定方式,即關掉當前shell重新開啟,設定就會消失。
3、永久設定方式
4、vim命令模式下關鍵字搜尋
(1)「/關鍵字」
輸入「/關鍵字」後回車,會將關鍵字全部高亮,如圖中set
n向下匹配;n向上匹配。
5、vim模式下字元管理
(1)字元的複製:
yl:複製乙個字元;y3l:複製3個字元;yw :複製乙個單詞; y3w :複製3個單詞;yy :複製游標所在行;
y3y:複製游標以下三行;p:複製完成後進入insert模式後在按p鍵進行貼上。
(2)字元的刪除:
dl:刪除乙個字母;d3l:刪除3個字母;dw:刪除乙個單詞;d3w:刪除3個單詞;dd:刪除游標所在行;
d3d:刪除游標以下三行;
(3)字元的剪下:
cl:剪下乙個字母;c3l:剪下3個字母;cw:剪下乙個單詞;c3w:剪下三個單詞;cc:剪下游標所在行;
c3c:剪下游標以下3行;esc--->p :剪下過後會立即進入insert模式,必須按esc鍵退出insert模式後才能按p鍵貼上。
6、vim的視覺化模式
在命令模式下按
「ctrl+v」
進入到可視模式,
在可視模式下可以區域選擇字元(用上下左右方向鍵選擇)
可視模式下批量新增字元
*>> ctrl+v
選中要加入字元所在列
*>> 按「i」進入插入模式,寫入要加入的字元
*>> 按esc
7、vim視覺化模式下的批量修改字元
(1)
:%s/原有字元/替換後字元注意:只替換每一行中出現的第乙個原有字元
由上圖可知,該命令只替換每一行第一次出現的字元。
(2):%s/原有字元/替換後字元/g 替換所有出現的字元
對比可知,該命令將所有的「@」字元替換為了「#」字元。
(3):1,5s/原有字元/替換後字元/g :替換1-5行中出現的所有選定字元。
8、vim的分屏功能
ctrl+w s :上下分屏;ctrl+w v :左右分屏;ctrl+w c :關閉游標所在螢幕
ctrl+w 上下左右:游標移動到指定螢幕;:sp file2 :同時編輯當前檔案和file2檔案;vimdiff:比較兩個檔案的不同
注意:在分屏操作時,ctrl和w同時按,鬆開後再按其他鍵。
9、游標的移動
:數字 :游標移動到指定行
g:游標移動至檔案最後一行;gg:游標移動至檔案第一行
在插入模式下:
i :游標所在位置插入;
i:游標所在行行首
;a:游標所在字元的下乙個位置;
a:游標所在行行尾
o:游標所在行下一行;o:游標所在行上一行;s:刪除游標所在字元插入;s:刪除游標所在行插入
10、vim的退出模式
:q:當用vim開啟檔案但沒有對字元作任何操作時可直接退出
:q!:當用vim開啟檔案並對字元作操作,放棄所有操作退出
:wq:儲存退出
:wq!:強行儲存退出,對超級使用者及檔案所有人生效
11、vim手冊
vimtutor :開啟vim手冊
q:退出手冊
12、gedit中的快捷鍵
ctrl n:在gedit中開啟乙個新的gedit;
ctrl c:複製字元;ctrl v:貼上字元;ctrl x :剪下字元;
ctrl s:儲存檔案;ctrl o:開啟檔案;
yelp help:gedit:在shell中開啟gedit圖形手冊。
vim及輸入輸出管理
一 vim三種工作模式 命令模式 插入模式 退出模式 二 命令模式下的各類操作 1.配置vim工作方式 1 臨時設定 命令模式是vim開啟檔案後預設進入的模式,這個模式中不能插入字元,但是可以設定vim的工作方式 set nu 新增行號 set nonu 取消編號 set cursorline 下劃...
linux基礎 輸入與輸出
乙個程式執行起來最少會開啟三個檔案,分別是標準輸入 0 標準輸出 1 錯誤輸出 2 三個檔案都是fd 檔案描述符 管理。linux下使用標準輸入檔案stdin和標準輸出檔案stdout,來表示每個命令的輸入和輸出,還使用乙個標準錯誤輸出檔案stderr用於輸出錯誤資訊。這三個標準輸入輸出系統預設與控...
linux標準輸入輸出及錯誤輸出
linux shell 環境中支援輸入輸出重定向,用符號 和 來表示。0 1和2分別表示標準輸入 標準輸出和標準錯誤資訊輸出,可以用來指定需要重定向的標準輸入或輸出,比如 2 a.txt 表示將錯誤資訊輸出到檔案a.txt中。同時,還可以在這三個標準輸入輸出之間實現重定向,比如將錯誤資訊重定向到標準...