linux常用命令(4)

linux常用命令(4) ---?Vim編輯器與Shell命令腳本

  • 如何使用vim編輯器來編寫文檔、配置主機名稱、網卡參數以及yum倉庫;
  • 通過vim編輯器將Linux命令放入合適的邏輯測試語句(if、for、while、case)后最終寫出簡單使用的shell腳本;
  • 可以通過at命令或配置Crontab計劃任務服務讓系統自動按時工作,讓日常工作更加高效自動化。

1、Vim文本編輯器

  vim是linux操作系統默認安裝的一款文本編輯器,vim是vi編輯器的升級版。

vim有三種模式
  命令模式、末行模式和編輯模式。

  • 命令模式:控制光標移動,可對文本進行刪除、復制、粘貼等工作;
  • 輸入模式:正常的文本錄入;
  • 末行模式:保存、退出與設置編輯環境。

命令模式中常用快捷鍵:

dd   ? 刪除(剪切)光標所在整行;
5dd   刪除(剪切)從光標處開始的5行;
yy    復制光標所在整行;
5yy?  復制從光標處開始的5行;
p   將之前刪除或復制過的數據粘貼到光標后;
/  字符串 在文本中從上至下搜索該字符串;
?  字符串 在文本中至下而上搜索該字符串;
n   顯示搜索命令定位到的下一個字符串;
N   顯示搜索命令定位到的上一個字符串;
u   撤銷上一步操作

末行模式中常用命令:

:w 保存
:q 退出
:q! 強制退出(放棄對文本的修改)
:wq! 強化保存退出
:set nu 顯示行號
:set nonu 不顯示行號
:命令 執行該命令
:整數 跳轉至該行

  • 修改主機名稱

修改 /etc/hostname文件。

2、shell腳本

  • 查看系統中所有可用的shell解釋器
cat /etc/shells
  • 查看當前的shell解釋器
echo $SHELL

1)、編寫簡單的腳本:

#!/bin/bash
#for example by billy
pwd
  • 接收用戶參數

格式:命令名 參數1 參數2 ...

SHELL預定義變量

$0 當前執行shell腳本的程序名
$1-9,${10},${11}... 參數的位置變量
$# 一共有多少個參數
$* 所有位置變量的值
$? 判斷上一條命令是否執行成功,0為成功,非0為失敗。

2)、判斷用戶的參數

測試語句格式為:

 [ 條件表達式 ]

細分測試語句有:

  文件測試、邏輯測試、整數值比較、字符串比較

  • 文件測試
 [ 操作符 文件或目錄名 ]

操作符

-d 測試是否為目錄
-e 測試文件或目錄是否存在
-f 判斷是否為文件
-r 測試當前用戶是否有權限讀取
-w 測試當前用戶是否有權限寫入
-x 測試當前用戶是否有權限執行

例如:
  測試 /opt/test 是否為目錄:

[ -d /opt/test ]

顯示上一條命令的返回值:?

echo $?
  • 邏輯測試

格式:

[ 表達式1 ] 操作符 [ 表達式2 ]

操作符

&&    邏輯與
||    邏輯或
!     邏輯否

例如:若當前用戶不是root,則輸出user

[ $USER != root ] && echo "user"

?

  • 整數值比較

格式

[ 整數1 操作符 整數2 ]

操作符

-eq    等于
-ne   不等于
-gt    大于
-lt    小于
-le    小于等于
-ge    大于等于
  • 字符串比較

格式

[ 字符串1 操作符 字符串2 ]

操作符

= 比較字符串內容是否相同
!= 比較字符串內容是否不同
-z 判斷字符串內容是否為空

?

3)、條件測試語句

轉載于:https://www.cnblogs.com/BillyYoung/p/11126742.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/448522.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/448522.shtml
英文地址,請注明出處:http://en.pswp.cn/news/448522.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

script 標簽到底該放在哪里

一般script標簽會被放在頭部或尾部。頭部就是<head>里面&#xff0c;尾部一般指<body>里。 前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 將script放在<head>里&a…

棧在表達式計算過程中的應用

棧在表達式計算過程中的應用 &#xff1a;建立操作數棧和運算符棧。運算符有優先級。 規則&#xff1a; 自左至右掃描表達式&#xff0c;凡是遇到操作數一律進操作數棧。 當遇到運算符時&#xff0c;如果它的優先級比運算符棧棧頂元素的優先級高就進棧。反之&#xff0c;取出…

Python-02-基礎知識

一、第一個Python程序 【第一步】新建一個hello.txt 【第二步】將后綴名txt改為py 【第三步】使用記事本編輯該文件 【第四步】在cmd中運行該文件 print("Hello World!") 強調&#xff1a;python解釋器執行程序是解釋執行&#xff0c;即打開文件讀內容&#xff0c;因…

數據結構之樹的一些基本操作

樹是由根結點和若干顆子樹構成的。樹是由一個集合以及在該集合上定義的一種關系構成的。集合中的元素稱為樹的結點&#xff0c;所定義的關系稱為父子關系。父子關系在樹的結點之間建立了一個層次結構。在這種層次結構中有一個結點具有特殊的地位&#xff0c;這個結點稱為該樹的…

利用FS寄存器獲取KERNEL32.DLL基址算法的證明(ZZ)

轉自&#xff1a;http://blog.csdn.net/int2e/archive/2008/01/09/2032732.aspxFS寄存器指向當前活動線程的TEB結構&#xff08;線程結構&#xff09; 偏移 說明 000 指向SEH鏈指針 004 線程堆棧頂部 008 線程堆棧底部 00C SubSystemTib 010 FiberData 014 ArbitraryUse…

很老很老的老偏方,小病一掃光

1、洋蔥、生姜治頭皮屑 ①將一個的洋蔥頭用紗布包好&#xff0c;用它揉擦頭皮&#xff0c;24小時后用溫水洗頭&#xff0c;即可止頭癢&#xff0c;除頭皮屑。 ②先將生姜切片&#xff0c;放入鍋里煮沸&#xff0c;待水溫不燙的時候倒上適量醋&#xff0c;加水洗頭。 2、小白果…

script 放置最佳位置以及 html 執行順序

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 看到知乎上有很多討論關于javascript位置的文章。所以特意留意了這方面的問題。 首先要了解到的是&#xff1a; html文件是自上而下的執…

677A

#include <stdio.h> int main() {int n, h;scanf("%d%d", &n, &h);int temp, width0;int i;for(i0; i<n; i){scanf("%d", &temp);if(temp<h)width;elsewidth2;}printf("%d\n", width);return 0; }轉載于:https://www.cn…

數據結構之二叉樹的一些基本操作

二叉樹是樹的特殊一種&#xff0c;具有如下特點&#xff1a;1、每個結點最多有兩顆子樹&#xff0c;結點的度最大為2。2、左子樹和右子樹是有順序的&#xff0c;次序不能顛倒。3、即使某結點只有一個子樹&#xff0c;也要區分左右子樹。 頭文件 BTree.h #ifndef __BTREE_H__ …

【Arduino】使用C#實現Arduino與電腦進行串行通訊

在給Arduino編程的時候&#xff0c;因為沒有調試工具&#xff0c;經常要通過使用串口通訊的方式調用Serial.print和Serial.println輸出Arduino運行過程中的相關信息&#xff0c;然后在電腦上用Arduino IDE的Serial Monitor來查看print出來的信息。Serial Monitor不僅可以接受Ar…

虛擬機NAT模式聯網

阿里開源鏡像軟件&#xff1a;https://opsx.alibaba.com/mirror 如何使VMware ip與本機ip處于同一網段 https://blog.csdn.net/kakuma_chen/article/details/71425620 轉載于:https://www.cnblogs.com/cdy0626/p/11131440.html

VS2008下最新X264(svn 2009.9)編譯不過的解決辦法

總有人說最新的版本 編譯不過&#xff0c;搞的群、 論壇里到處都是這種求助貼。建議斑竹把這個解決辦法放到醒目的位置&#xff0c;以減少噪音。科普開始1、編譯問題由于MS的VS編譯器對C99標準支持不好&#xff0c;不支持函數當中混合定義、聲明變量。解決辦法&#xff1a;在函…

node、npm、vue安裝 -- VUE 項目 demo 實例

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 安裝node&#xff1a; sudo yum install epel-release sudo yum install nodejs node --version // 安裝好后查看版本2. 安裝 npm …

用C語言實現簡單的停車場管理

這個程序是利用棧和循環隊列實現的&#xff0c;自己得先處理好邏輯關系就好了。由于題目沒有要求&#xff0c;這個程序就沒加重復判斷&#xff0c;比如一輛車已經停在車位上或者便道上&#xff0c;再來一輛就判斷不了了。關于棧&#xff0c;就是先進后出的思想&#xff0c;隊列…

推薦一個配置linux服務的網站

該網站的各種linux服務的配置都是基于CentOS系統的 基本上各種linux服務都有了 http://www.server-world.info/en/轉載于:https://www.cnblogs.com/Skyar/p/3582389.html

mariadb數據庫增刪改查

1.常用數據類型 1&#xff09;整數:int, bit 2&#xff09;小數:decimal    #decimal(5,2)表示共有五位數&#xff0c;保留兩位小數 3&#xff09;字符串:varchar, char   4&#xff09;日期時間:date, time, datetime 5&#xff09;枚舉類型(enu…

為什么你工作努力卻沒有起色?

成為職場達人&#xff0c;未必要經常挑燈夜戰。相反&#xff0c;注意到下面幾條&#xff0c;會讓你少走彎路。 1&#xff09;成長的機會永遠比眼前的待遇重要——做重要的事比多拿錢重要。 我知道在水木bbs上的worklife版本&#xff0c;每天都在上演的就是比較自己的第一個o…

《 Spring 實戰 》(第4版) 讀書筆記 (未完結,更新中...)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Pxx 表示在書的第 xx 頁。 Spring 框架的核心是 Spring 容器。 1. (P7.) 構造器注入是依賴注入的方式之一。 緊耦合&#xff1a;在 …

數據結構排序法之希爾排序法(Shell Sort)

希爾排序&#xff0c;也叫遞減增量排序&#xff0c;是插入排序的一種更高效的改進版本。希爾排序是不穩定的排序算法。 希爾排序是基于插入排序的以下兩點性質而提出改進方法的&#xff1a; 1、插入排序在對幾乎已經排好序的數據操作時&#xff0c;效率高&#xff0c;即可以達…

Windows To Ghost系統封裝之必備軟件集 - 好壓

好壓壓縮軟件&#xff08;HaoZip&#xff09;是強大的壓縮文件管理器&#xff0c;是完全免費的新一代壓縮軟件&#xff0c;相比其它壓縮軟件系統資源占用更少&#xff0c;有更好的兼容性&#xff0c;壓縮率比較高。 它提供了對ZIP、7Z和TAR文件的完整支持&#xff0c;能解壓RAR…