亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你還,請問一下linux中%什么意思?

你還,請問一下linux中%什么意思?

料青山看我應如是 2021-02-17 15:11:32
linux的shell環境下運行如下命令:echo 'date+%Y%m%d'結果顯示:20120408請問:%在里面表示什么意思?
查看完整描述

2 回答

?
MYYA

TA貢獻1868條經驗 獲得超4個贊

介紹下Shell中的${}、##和%使用范例,本文給出了不同情況下得到的結果。
假設定義了一個變量為:
代碼如下:
file=/dir1/dir2/dir3/my.file.txt
可以用${ }分別替換得到不同的值:
${file#*/}:刪掉第一個 / 及其左邊的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}:刪掉最后一個 / 及其左邊的字符串:my.file.txt
${file#*.}:刪掉第一個 . 及其左邊的字符串:file.txt
${file##*.}:刪掉最后一個 . 及其左邊的字符串:txt
${file%/*}:刪掉最后一個 / 及其右邊的字符串:/dir1/dir2/dir3
${file%%/*}:刪掉第一個 / 及其右邊的字符串:(空值)
${file%.*}:刪掉最后一個 . 及其右邊的字符串:/dir1/dir2/dir3/my.file
${file%%.*}:刪掉第一個 . 及其右邊的字符串:/dir1/dir2/dir3/my
記憶的方法為:
# 是 去掉左邊(鍵盤上#在 $ 的左邊)
%是去掉右邊(鍵盤上% 在$ 的右邊)
單一符號是最小匹配;兩個符號是最大匹配
${file:0:5}:提取最左邊的 5 個字節:/dir1
${file:5:5}:提取第 5 個字節右邊的連續5個字節:/dir2
也可以對變量值里的字符串作替換:
${file/dir/path}:將第一個dir 替換為path:/path1/dir2/dir3/my.file.txt
${file//dir/path}:將全部dir 替換為 path:/path1/path2/path3/my.file.txt    Linux命令功能強大,學會其命令會使操作簡易方便。推薦看下《Linux命令大全》,具體可看下圖:




查看完整回答
反對 回復 2021-03-28
?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

在linux系統中在命令行中Bash中特有的字符串替換方式。

其中%是linux中shell中一般代表變量,其中linux系統中有系統變量和自定義變量。
其中有些事系統自帶的變量如使用env命令顯示所有的環境變量,還有一些是自己編寫的變量,具體含義需要提前賦值。
其中系統變量如系統提供的參數稱為位置參數。參數的值可以用$N得到,N是一個數字,如果為1,即$1。如果是%表示則為%1.
我舉一個列子幫助理解:
假設一個變量:
x=abcdabcd
那么:
echo ${x/a/b} # 只替換第一個a為b,結果:
bbcdabcd
%echo ${x//a/b} # 將所有a替換為b,結果:
bbcdbbcd
其中不可以使用正則表達式, 只能用 * ? 等通配符。



查看完整回答
反對 回復 2021-03-28
  • 2 回答
  • 0 關注
  • 409 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號