管道符、作業控制、shell變數、全域變數、環境變數的設定檔,shell全域變數

來源:互聯網
上載者:User

管道符、作業控制、shell變數、全域變數、環境變數的設定檔,shell全域變數
管道符

管道符“|”:將前一個命令的輸出作為後一個命令的輸入。?
查看一個檔案有多少行:?
除了用vim開啟檔案 “set nu” 顯示行號外,還能用管道符,不用開啟檔案就能統計。

[root@shuai-01 ~]# cat 1.txt |wc -l1

查看目前的目錄下有多少檔案:

[root@shuai-01 ~]# find ./ -type f |wc -l20
作業控制

運行一個進程時,這時來了一個很重要的事,立即將手頭的事暫停,出去幹另外的事。重要的事幹完了再回來做這個事。?
暫停:ctrl + z?
恢複命令:fg?
終止命令:Ctrl + c?
後台運行命令:bg?
查看任務命令:jobs?
用vim編輯1.txt檔案

[root@shuai-01 ~]# vim 1.txt

中途有事,想暫停幹點別的。(Ctrl + z)

[root@shuai-01 ~]# vim 1.txt[1]+  已停止               vim 1.txt

幹完後想要恢複編輯1.txt (fg )

中途又來了點事(編輯2.txt),要將1.txt放後台

[root@shuai-01 ~]# bg 1[1]+ vim 1.txt &

“&”:表示後台運行?
查看jobs:

[root@shuai-01 ~]# jobs[1]+  已停止               vim 1.txt[2]-  已停止               vim 2.txt
shell變數

變數由變數名和變數值組成。?
變數名=變數值?
變數分系統預設變數和使用者自訂變數?
一般的系統預設變數名都是大寫,如:HISTSIZE,SHELL,PATH

查看變數的值用echo命令:echo $變數名

[root@shuai-01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin[root@shuai-01 ~]# echo $SHELL/bin/bash

env命令能顯示系統環境變數

[root@shuai-01 ~]# envXDG_SESSION_ID=1HOSTNAME=shuai-01SELINUX_ROLE_REQUESTED=TERM=xtermSHELL=/bin/bashHISTSIZE=1000SSH_CLIENT=192.168.176.1 56774 22SELINUX_USE_CURRENT_RANGE=SSH_TTY=/dev/pts/0USER=root

set命令就將系統預設變數和使用者自訂全部顯示

使用者自訂變數規則:?
1. 變數格式為:變數名=變數值 (等號兩邊不能有空格)?
2. 變數名由字母,底線,和數字組成,並且不能以數字開頭?
3. 變數內容有特殊字元時(空格),要加上單引號”?
定義一個變數:

[root@shuai-01 ~]# a=123[root@shuai-01 ~]# echo $a123

變數值有空格:

[root@shuai-01 ~]# b='shuai ao'[root@shuai-01 ~]# echo $bshuai ao

變數中有其他變數內容:

[root@shuai-01 ~]# c="$a""$b"[root@shuai-01 ~]# echo $c123shuai ao

以上設定的變數只在當前shell下才有用?
關於全域變數?
全域變數就是在這個shell下定義的變數在這個shell的子shell下也能用。?
查看系統進程樹結構(pstree命令)

[root@shuai-01 ~]# pstree |grep bash        |-sshd-+-sshd-+-bash        |      |      `-bash-+-grep        |      `-sshd---bash

兩個分開的sshd表示兩個終端登入的,第一個sshd兩分開的bash表示複製登入。?
在一個shell下運行bash,會進入另一個shell

[root@shuai-01 ~]# pstree |grep bash        |-sshd-+-sshd-+-bash        |      |      `-bash---bash-+-grep        |      `-sshd---bash

新進的shell就是上一個shell的子shell。?
在當前shell下定義一個全域變數(export)

[root@shuai-01 ~]# export b=123[root@shuai-01 ~]# echo $b123[root@shuai-01 ~]# bash[root@shuai-01 ~]# echo $b123[root@shuai-01 ~]# pstree |grep bash        |-sshd-+-sshd-+-bash        |      |      `-bash---bash---bash-+-grep        |      `-sshd---bash

當前shell下定義的全域變數在當前shell和子shell中能生效。(在上一級shell和其他終端是不生效的)?
刪除變數(unset)

[root@shuai-01 ~]# unset b
環境變數的設定檔

環境變數分系統內容變數和個人環境變數?
系統內容變數設定檔:?
/etc/profile :PATH ,HISTSIZE,USER,umask?
/etc/bashrc:PS1 , umask?
ps1:顯示命令列開頭的一串[root@shuai-01 ~]#

[root@shuai-01 ~]# echo $PS1[\u@\h \W]\$

個人環境變數的設定檔?
./.bash_profile:登入時執行?
./.bashrc:自訂alias和自訂變數可以寫入該檔案中?
./.bash_history:記錄曆史命令?
./.bash_logout:退出shell執行

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.