最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux特殊變量與路徑使用及說(shuō)明

 更新時(shí)間:2025年11月11日 11:15:48   作者:fengyehongWorld  
這篇文章主要介紹了Linux特殊變量與路徑使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

一. 特殊變量

1.1 shell相關(guān)

查看當(dāng)前shell解釋器的路徑

apluser@FengYeHong-HP:~$ echo "$SHELL"
/bin/bash
apluser@FengYeHong-HP:~$ echo "$BASH"
/bin/bash

查看當(dāng)前bash的版本號(hào)

apluser@FengYeHong-HP:~$ echo "$BASH_VERSION"
5.1.16(1)-release

1.2 登錄用戶(hù)名和服務(wù)器名

登錄用戶(hù)名

apluser@FengYeHong-HP:~$ echo "$USER"
apluser
apluser@FengYeHong-HP:~$ echo "$LOGNAME"
apluser
apluser@FengYeHong-HP:~$ id -un
apluser

登錄服務(wù)器名

apluser@FengYeHong-HP:~$ echo "$NAME"
FengYeHong-HP
apluser@FengYeHong-HP:~$ hostname
FengYeHong-HP

1.3 路徑相關(guān)

用戶(hù)家目錄

apluser@FengYeHong-HP:~$ echo "$HOME"
/home/apluser
apluser@FengYeHong-HP:~$ echo ~
/home/apluser

當(dāng)前工作目錄

apluser@FengYeHong-HP:~$ echo "$PWD"
/home/apluser
apluser@FengYeHong-HP:~$ echo ~+
/home/apluser

可執(zhí)行文件的搜索路徑 → $PATH

apluser@FengYeHong-HP:~$ echo "$PATH" | xargs -d ':' -L 1 | head
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games
/usr/lib/wsl/lib

1.4 隨機(jī)數(shù)

apluser@FengYeHong-HP:~$ echo "$RANDOM" | md5sum | cut -c 1-8
3abe73c4

1.5$符號(hào)系列

變量含義
$0當(dāng)前腳本的文件名(含路徑)。在命令行執(zhí)行時(shí)就是命令本身。
$n第 n 個(gè)參數(shù)(如 $1 表示第一個(gè)參數(shù))。
$#傳入腳本的參數(shù)個(gè)數(shù)。
$*傳入的所有參數(shù),作為一個(gè)整體字符串。
$@傳入的所有參數(shù),每個(gè)參數(shù)獨(dú)立展開(kāi)。
$$當(dāng)前 Shell 的進(jìn)程 ID (PID)。
$!最近一次在后臺(tái)執(zhí)行的命令的 PID。
$?最近一條命令的返回狀態(tài)(0 表示成功,非 0 表示失?。?。
$_上一條命令的最后一個(gè)參數(shù)。
$-當(dāng)前 Shell 的選項(xiàng)標(biāo)志。

1.6 其他

$SECONDS:查看當(dāng)前終端啟動(dòng)的時(shí)間

apluser@FengYeHong-HP:~$ echo "$SECONDS"
2234

$LINENO:查看在當(dāng)前腳本中的行號(hào)

apluser@FengYeHong-HP:~$ echo "當(dāng)前所在的行是: $LINENO"
當(dāng)前所在的行是: 76

$OSTYPE:查看當(dāng)前環(huán)境的類(lèi)型(git bash 還是 linux)

# git for bash
$ echo "$OSTYPE"
msys

# linux
apluser@FengYeHong-HP:~$ echo "$OSTYPE"
linux-gnu

二. 路徑

2.1/dev/null

/dev/null 在 Linux(以及類(lèi) Unix 系統(tǒng))里是一個(gè) 特殊設(shè)備文件,常被稱(chēng)為 黑洞位桶 (bit bucket)。它的主要作用是:

丟棄輸出,往 /dev/null 寫(xiě)入的所有數(shù)據(jù)都會(huì)被直接丟棄,不會(huì)保存也不會(huì)報(bào)錯(cuò)。

echo "hello" > /dev/null

清空文件

cat /dev/null > file.txt

把不需要的標(biāo)準(zhǔn)輸出或標(biāo)準(zhǔn)錯(cuò)誤重定向到 /dev/null

apluser@FengYeHong-HP:~$ ls /root
ls: cannot open directory '/root': Permission denied
apluser@FengYeHong-HP:~$
apluser@FengYeHong-HP:~$ ls /root > /dev/null
ls: cannot open directory '/root': Permission denied
apluser@FengYeHong-HP:~$
apluser@FengYeHong-HP:~$ ls /root > /dev/null 2>&1
apluser@FengYeHong-HP:~$ echo "$?"
2
# 2> 表示 標(biāo)準(zhǔn)錯(cuò)誤輸出 重定向到 /dev/null
# 如果 ls /root 成功 → 會(huì)顯示目錄內(nèi)容
# 如果失敗(比如沒(méi)有權(quán)限) → 錯(cuò)誤信息丟到 /dev/null
# 也就是說(shuō):成功時(shí)會(huì)輸出內(nèi)容,但是失敗時(shí)不會(huì)顯示內(nèi)容
ls /root 2> /dev/null

# > /dev/null → 把 標(biāo)準(zhǔn)輸出 丟棄
# 2>&1 → 把 標(biāo)準(zhǔn)錯(cuò)誤 也重定向到 標(biāo)準(zhǔn)輸出,而標(biāo)準(zhǔn)輸出已經(jīng)被丟到 /dev/null
# 無(wú)論成功還是失敗 → 任何輸出都丟掉,終端上一點(diǎn)東西都不會(huì)顯示
ls /root > /dev/null 2>&1
if printenv USERNAME > /dev/null 2>&1; then
  echo "環(huán)境變量 USERNAME 存在"
else
  echo "環(huán)境變量 USERNAME 不存在"
fi
  • > /dev/null:丟掉正常輸出
  • 2>&1:丟掉錯(cuò)誤輸出
  • 在 Bash 里,if 并不是判斷輸出結(jié)果,而是判斷命令的退出狀態(tài)碼 ($?)
  • 0 表示成功(條件成立),非0 表示失敗(條件不成立)

printenv 用來(lái)打印環(huán)境變量

  • 如果環(huán)境變量 USERNAME 存在,就會(huì)輸出它的值,并返回狀態(tài)碼 0。
  • 如果環(huán)境變量不存在,就會(huì)返回狀態(tài)碼 非 0
  • 因?yàn)槲覀兪褂?code>/dev/null 2>&1來(lái)丟棄標(biāo)準(zhǔn)和錯(cuò)誤輸出,因此即使變量不存在也不會(huì)報(bào)錯(cuò)。

2.2/dev/urandom

獲取隨機(jī)數(shù)的路徑,必須指定要獲取的范圍

apluser@FengYeHong-HP:~$ cat /dev/urandom | tr -dc 'A-Za-z0-9' | head -c 12
KdBX3jPgX9EC

2.3 查看服務(wù)器的發(fā)行版

apluser@FengYeHong-HP:~$ cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

2.4/etc下的系統(tǒng)路徑

路徑作用
/etc/os-release當(dāng)前發(fā)行版信息。
/etc/passwd用戶(hù)賬號(hào)信息。
/etc/group用戶(hù)組信息。
/etc/hosts主機(jī)名解析。
/etc/resolv.confDNS 配置。
/etc/fstab文件系統(tǒng)掛載表。
/etc/shadow用戶(hù)密碼哈希(僅 root 可讀)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 快速自學(xué)Linux命令的4種方法

    快速自學(xué)Linux命令的4種方法

    自學(xué)Linux對(duì)于新手來(lái)說(shuō)是一件非常辛苦的事件,那么有沒(méi)有快速成為L(zhǎng)inux高手的方法呢,掌握一些Linux常用特殊命令是必不可少的。下面是自學(xué)Linux命令的4種方法,
    2018-10-10
  • 樹(shù)莓派搭建nas服務(wù)器的詳細(xì)過(guò)程

    樹(shù)莓派搭建nas服務(wù)器的詳細(xì)過(guò)程

    這篇文章主要介紹了樹(shù)莓派搭建nas服務(wù)器的教程,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-01-01
  • linux多線(xiàn)程編程(四)

    linux多線(xiàn)程編程(四)

    linux中的線(xiàn)程是輕量級(jí)的線(xiàn)程,linux中的線(xiàn)程調(diào)度是由內(nèi)核調(diào)度程序完成的,每個(gè)線(xiàn)程有自己的ID號(hào)。與進(jìn)程相比,它們消耗的系統(tǒng)資源少、創(chuàng)建較快、相互間的通信也較容易。
    2014-08-08
  • Linux下如何清理系統(tǒng)緩存并釋放內(nèi)存

    Linux下如何清理系統(tǒng)緩存并釋放內(nèi)存

    Linux清理系統(tǒng)緩存需先執(zhí)行sync確保數(shù)據(jù)寫(xiě)入磁盤(pán),再使用drop_caches(0-3)釋放內(nèi)存,最后用free -h查看效果,以釋放內(nèi)存并提升系統(tǒng)響應(yīng)
    2025-07-07
  • 分析Linux內(nèi)核調(diào)度器源碼之初始化

    分析Linux內(nèi)核調(diào)度器源碼之初始化

    本篇文章將從源碼的角度剖析內(nèi)核調(diào)度的具體原理和實(shí)現(xiàn),以L(fǎng)inux kernel 5.4 版本(TencentOS Server3 默認(rèn)內(nèi)核版本)為對(duì)象,從調(diào)度器子系統(tǒng)的初始化代碼開(kāi)始,分析Linux內(nèi)核調(diào)度器的設(shè)計(jì)與實(shí)現(xiàn)
    2021-06-06
  • 在Ubuntu 16.10安裝mysql workbench報(bào)未安裝軟件包 libpng12-0錯(cuò)誤的解決方法

    在Ubuntu 16.10安裝mysql workbench報(bào)未安裝軟件包 libpng12-0錯(cuò)誤的解決方法

    這篇文章主要介紹了在Ubuntu 16.10安裝mysql workbench報(bào)未安裝軟件包 libpng12-0錯(cuò)誤的解決方法的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • VMware下CentOS 6.7安裝圖文教程

    VMware下CentOS 6.7安裝圖文教程

    這篇文章主要為大家詳細(xì)介紹了VMware下CentOS 6.7安裝圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Linux sftp命令用法總結(jié)

    Linux sftp命令用法總結(jié)

    在本篇文章里小編給大家分享的是一篇關(guān)于Linux sftp命令的相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2019-10-10
  • Linux系統(tǒng)下利用C程序輸出某進(jìn)程的內(nèi)存占用信息

    Linux系統(tǒng)下利用C程序輸出某進(jìn)程的內(nèi)存占用信息

    這篇文章主要給大家介紹了關(guān)于在Linux系統(tǒng)下利用C程序輸出某進(jìn)程的內(nèi)存占用信息的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來(lái)一起看看吧。
    2017-12-12
  • Apache Pulsar 微信大流量實(shí)時(shí)推薦場(chǎng)景下實(shí)踐詳解

    Apache Pulsar 微信大流量實(shí)時(shí)推薦場(chǎng)景下實(shí)踐詳解

    這篇文章主要為大家介紹了Apache Pulsar 微信大流量實(shí)時(shí)推薦場(chǎng)景下實(shí)踐詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11

最新評(píng)論

铁岭县| 贡嘎县| 巩留县| 贵溪市| 静宁县| 棋牌| 邮箱| 广昌县| 定边县| 鞍山市| 莲花县| 远安县| 武邑县| 大埔区| 西城区| 新河县| 盈江县| 东源县| 綦江县| 海口市| 巴塘县| 青田县| 泽普县| 大冶市| 清远市| 尉氏县| 新民市| 文昌市| 伊金霍洛旗| 连云港市| 宁国市| 石渠县| 泊头市| 马山县| 石首市| 马边| 辽宁省| 汝城县| 新闻| 湾仔区| 永仁县|