Linux shell入門基礎(六)

来源:http://www.cnblogs.com/baiyifan/archive/2016/03/11/5264504.html
-Advertisement-
Play Games

六、Shell腳本編程詳解將上述五部分的內容,串聯起來,增加對Shell的瞭解01.shell腳本shell:##perl#python#php#jsp不同的腳本執行不同的文本,執行的角色是不一樣的;#shell scripts(UNIX Like系統的原則有一條:程式越短越好)#bash csh


六、Shell腳本編程詳解將上述五部分的內容,串聯起來,增加對Shell的瞭解01.shell腳本shell:##perl#python#php#jsp不同的腳本執行不同的文本,執行的角色是不一樣的;#shell scripts(UNIX Like系統的原則有一條:程式越短越好)#bash csh tcsh ksh#which startx(查看文件的路徑)/usr/X11R6/bin/startx#vi `which startx`#!/bin/sh……#vi /etc/rc.d/rc.sysinit(修改系統名,顏色等屬性)#echo $SHELL/bin/bash腳本中的#表示註釋,但第一行中的#有特殊的意義:如:第一行字元非#,表示這是一個bash腳本第一行中是#,但第二個字元不是i,表示這是一個csh腳本第一行字元是#,且第二個字元是!,表示調用其後指定的/usr/bin/python2.2程式來執行以下這個腳本02.shell中正則表達式bash本身不提供正則表示式的支持,只支持通配符* ?正則表達式可以通過一些命令去執行,比如grep,vi,sed,awk比如Linux shell入門基礎(二)中的介紹03.與shell腳本的交互#cd /tmp/ddd/#ls……#rm -rf *#vi a#!/bin/bashecho $1 \$1echo $2 \$2echo $3 \$3echo $# \$\#echo $? \$\?echo $$ \$\$wq#chmod a+x a#./a$1$2$30 $#(輸入多少個參數)0 $?3061 $$#./a aaa bbb cccaaa $1bbb $2ccc $34 $#0 $?3064 $$#vi b#!/bin/bashecho stop $1 $2ing ……#./b httpd stophttp stoping……#read讀入數據給變數#echo 輸出數據#printf輸出數據#vi a#!/bin/bashecho $1(做輸入) \$1echo $2 (做輸入)\$2echo $3 (做輸入)\$3echo $# (查看有幾個參數)\$\#echo $?(shell的命令是否成功執行,不成功則,執行其他) \$\?echo $$ \$\$read -p "please input your name" AAAprinf "$AAA is fool"#./a aaa bbb cccaaa $1bbb $2ccc $34 $#0 $?3064 $$please input your name:byfbyf is fool#printf "\t hello\n" hello#help printf#man bash……:printf#printf "\a"(產生一個聲音)04.bash的執行方式1.輸入腳本的絕對路徑或者相對路徑/root/bachup./bachup2.bash腳本或tcsh及腳本,找子shell來執行表示以bash或tcsh來執行腳本bash /root/backup3.在腳本的路徑前加“.”,表示某個路徑下有一個腳本../backup. /root/backup#vi bpstree |grep -A2 -B2 pstreebash--pstree#pstree |grep -A2 -B2 pstree#bash ./bbash--bash--pstree#chmod a+x bbash--bash--pstree#vi bexport BBB=byf(將BBB設置成byf目錄及子目錄下的環境變數)wq#cat bexport BBB#./bpstree |grep -A2 -B2 pstre#echo BBB#. /tmp/b(在當前shell腳本中執行)#. ./b#echo $BBB(取出BBB的變數值)byf
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • jdk-7u55-linux-x64.tar.gz ubuntu12.04以上版本 方法/步驟 1 首先,百度搜索jdk,選擇第一個,網站是Oracle Jdk。點擊進去 2 點擊Download,到官網下載linux版本的jdk。選擇自己對應的操作系統及32或64位版本,這裡我下載的是64位版本的
  • 一般在配置伺服器的時候,涉及到代碼上傳,通常都要用到FTP方式。 1.先查看系統是否安裝vsftpd: 1 rpm -qa | grep vsftpd View Code 如果出現vsftpd-2.2.2-14......字樣什麼系統以經安裝vsftpd 如果沒有安裝,現在開始安裝: 1 yum i
  • 1、我的Vaio Fit15e的無線網卡是BCM43142,裝了Ubuntu後為了裝驅動折騰了好久,因為這款網卡在Broadcom官網都找不到驅動,google了一大圈,一個最簡單的命令可以解決這個問題 sudo apt-get install bcmwl-kernel-source 2、電腦裝的W
  • Ubuntu線上安裝mysql 2016/3/11 1.確保ubuntu可以正常上網 2.更改軟體源(詳情見上一篇隨筆) 3.執行:sudo apt-get updat(sudo是提升許可權, apt-get update更新最新的套件資訊) 4.執行:sudo apt-get install mys
  • Ubuntu更改軟體源 2016/3/11 1.啟動器中打開“ubuntu軟體中心” 2.點擊“編輯”選擇“軟體源” 3.在“下載自”選項中點擊“其他站點” 4.找到“中國” 5.選擇“mirror.163.com”,然後選擇“選擇伺服器” 6.輸入管理員密碼即可
  • 從mono的官網上查,debian的步驟寫得太亂了。其實總結起來,就是這麼幾步: 1 apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
  • 銳捷校園網虛擬機聯網問題 2016/3/10 問題描述: 銳捷校園網下註冊過MAC地址的PC機可以正常上網,但是虛擬機vmwareworkstation使用以下3種網路連接還是不可以正常上網。 橋接模式 NAT模式 僅主機模式 問題分析: 只有在網路中心綁定過MAC地址的PC機使用銳捷客戶端獲得ip
  • ActivateKeyboardLayout 設置調用線程或當前進程為輸入區域設置標識符; System.Windows.Forms.InputLanguage.CurrentInputLanguage 獲取或設置當前線程的輸入語言 /// <summary> /// 設置調用線程或當前進程為輸入區
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...