vim編輯器

vim編輯器三種模式轉換

clipboard

G跳到尾行

gg:跳到首行
H:跳到當前頁的首行
L: 跳到當前頁的尾行
M: 跳到當前而的中間行
dd: 刪除光標所在的行
#dd:多行刪除
yy:復制行
#yy: 復制多行 ?
Y: 復制整行
cc:刪除當前行并輸入新內容
#cc:刪除多行
C:刪除當前光標到行尾,并切換成插入模式
修改配置文件
全局: /etc/vimrc
用戶:~/.vimrc
set nu 顯示行號
set nonu取消顯示行號
set ai 啟用自動縮進功能
set noai 取消自動縮進功能
set ic忽略字符大小寫
set noic 不忽略字符的大小寫
set sm括號匹配
set nosm 取消括號匹配
syntax on|of語法高亮
搜索高亮
set hlsearch
set nohlsearch

clipboard

編寫腳本

本地變量:僅對當前SHELL有效,對子SHELL也無效

環境變量:對當前SHELL及其子SHELL均有效。
查詢變量
set 即顯示本地變量也顯示環境變量
env 顯示環境變量
引用變量時
$varname
“$varname”
${varname}
當變量值當中包含換行符,如果希望引用出的值同樣包含換行符,只能使用”$varname”
刪除變量
unset varname
位置變量:在腳本代碼中調用通過命令行傳遞給腳本的參數
$1, $2, …:對應第1、第2等參數,shift [n]換位置
$0: 命令本身
$*: 傳遞給腳本的所有參數,全部參數合為一個字符串
$@: 傳遞給腳本的所有參數,每個參數為獨立字符串
$#: 傳遞給腳本的參數的個數
$@ $* 只在被雙引號包起來的時候才會有差異
shift 將位置化參數向左移。默認為shift 1 即$1被刪除,原$2變為$1,即$n+1 變為$n
set — 清空所有位置變量
轉譯:
\ 完全轉譯
“”部分轉譯 \ ` ! $ 注:變量引用會被替換為變量的值
” 完全轉譯
&&前一條命令執行成功才執行下一步
||前一條命令執行失敗才執行下一步
1.寫一個腳本名為jiaozuoyexx.sh 當執行該腳本時如jiaozuoyeXX.sh testXX.sh,就會自動將該testXX.sh傳給教師機,路徑是

scp testXX.sh mage26@172.17.252.213:~/scripts 密碼為mage26

2.寫一個能夠創建新腳本的Shell script,如名為createshXX.sh 當執行時createsh /root/bin/test1.sh
則會自動創建并打開/root/bin/test1.sh,且其中包含以下內容。
#!/bin/bash
# ——————————————
# Filename:
# Revision:
# Date:
# Author:
# Email:
# Website:
# Description:
# ——————————————

clipboard

應該再加個chmod+x $test1加執行權限

clipboard

變量命名規則,字母數字下劃線,且不能以數字開頭,之前命名為test1.sh因為包含不合法字符一直出錯還有不能使用導出符>,要使用追加>>
作業:
1、編寫腳本/root/bin/sumid.sh,計算/etc/passwd文件中的第10個用戶和第20用戶的ID之和?

clipboard

其他的算術運算方法
(1)let var=算術表達式
(2) var=$[算術表達式]
(3) var=$((算術表達式))
(4) var=$(expr arg1 arg2 arg3 …) 乘法時要轉譯* ,即\*
(5) declare –i var = 數值
2、編寫腳本/root/bin/sumspace.sh,傳遞兩個文件路徑作為參數給腳本,計算這兩個文件中所有空白行之和

clipboard

糾正:file1=`cat $first_filename|grep ^[[:space:]]*$|wc -l`
         file2=`cat $second_filename|grep ^[[:space:]]*$|wc -l`
         echo “sum=$[$file1+$file2]”

要考慮空格行和table鍵組成的空白行

3、編寫腳本/root/bin/sumfile.sh,統計/etc, /var, /usr目錄中共有多少個一級子目錄和文 件

clipboard

1.編寫腳本/bin/per.sh,判斷當前用戶對指定的參數文件,是否不可讀并且不可寫

clipboard

clipboard

[ expression1 -a expression2 ] 并且

[ expression1 -o expression2 ] 或者

注意空格規范

2.編寫腳本/root/bin/excute.sh ,判斷參數文件是否為sh后綴的普通文件,如果是,添加所有人可執行權限,否則提示用戶非腳本文件

clipboard

3.編寫腳本/root/bin/nologin.sh和login.sh,實現禁止和充許普通用戶登錄系統

clipboard

不知道這次截圖清晰嗎,我盡力了也不知道為什么不清晰,允悲

原創文章,作者:jieran,如若轉載,請注明出處:http://www.www58058.com/83961

(0)
jieranjieran
上一篇 2017-08-05 20:45
下一篇 2017-08-05 22:13

相關推薦

  • linux中常用文本處理工具

       在linux文件系統中經常會使用到文本處理工具,這里簡單介紹幾種文本處理工具: 抽取文本的工具 文件內容:less和cat 文件截?。篽ead和tail 按列抽?。篶ut 按關鍵字抽取:grep , egrep 文件查看命令:cat, tac,rev,more,less   cat命令是用戶經常使用的用來查看文本…

    Linux干貨 2016-08-07
  • 計算機的組成及其功能

    硬件部分     運算器:對數據進行處理,如基本四則運算和邏輯運算     控制器:協調整個計算機資源的運行,調試各個命令的執行順序     存儲器:數據的保存位置,可分為內存和其它各種非斷電丟失的硬盤    …

    Linux干貨 2016-10-30
  • 馬哥Linux第四周作業

    1.復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限 ~]# cp -r /etc/skel/ /home/user1 ~]# chmod -R g0-rwx /home/user1/ 2.編輯/etc/group文件,添加組hadoop 編輯/etc/group 寫入:hado…

    2018-01-07
  • lvs–各類型的原理及實現—(原理篇)

    前言:    LVS即是linux虛擬服務器,是一個虛擬的服務器集群系統,目的是使用集群技術和linux操作系統實現一個高性能、高可用的服務器。采用IP負載均衡技術和基于內容請求分發技術,將請求負載均衡地轉移到不同的服務器上執行,從而將一組服務器構成一個高性能、高可用的虛擬服務器。此篇的內容只包含兩種較為常用的LVS技術,分別是LVS-N…

    Linux干貨 2016-10-27
  • zabbix之報警功能的實現

    一、注冊微信公眾號 首先申請微信公眾平臺https://mp.weixin.qq.com/一個人最多申請5個公眾號,所以還是可以的 申請完之后就可以根據騰訊的提示使用微信公眾號了,然后用你自己的微信掃描關注微信號。 就可以看到用戶數了,接下來的就要使用的用戶的微信ID號了。點擊用戶查看用戶的微信ID號。在瀏覽器查看用戶的微信ID號。就是那個紅色的ID了。 h…

    Linux干貨 2017-03-27
欧美性久久久久