linux中%什么意思

linux的shell环境下运行如下命令:
echo 'date+%Y%m%d'
结果显示:20120408
请问:%在里面表示什么意思?

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
其中不可以使用正则表达式, 只能用 * ? 等通配符
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-06-06

介绍下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命令大全》,具体可看下图:

第2个回答  推荐于2017-09-22
%在linux中一般代表变量,有系统变量和自定义变量,上面的%Y%m%d是系统变量,
也可以自己定义变量,如:
aaa = 1234
echo %aaa
1234本回答被提问者采纳
第3个回答  2021-10-20
%在linux中一般代表变量,有系统变量和自定义变量,其中系统变量如系统提供的参数称为位置参数。参数的值可以用$N得到,N是一个数字,如果为1,即$1。如果是%表示则为%1.命令介绍可参考下《Linux命令大全(手册)》
第4个回答  2012-04-11
没有什么意思,是date这个程序解释的。 每个人写的程序都有自己风格,他想用什么字符来判断什么数据,是他自己决定的。

linux的shell语言中匹配字符左侧(#)或右侧(%)的符号
Linux Shell语言中包含有用于字符串处理的特殊字符,如"#"、"##"、"%"和"%%"。它们虽非正则表达式组成部分,却在字符串操作中发挥重要作用。下面逐一介绍它们的使用方法:"#"用于在字符串处理时删除匹配模式左侧的最短字符串。例如,若要从字符串"hello#"中删除左侧的匹配模式"#",则使用"#"符号。

linux shell:这里的%% * 是什么意思?
}的意思就是从LINE这个变量的值中,从后面开始以最长匹配删去%%后面的表达式内容。从你的shell看,wc -l的结果是行数+空格+文件名,你的匹配项是'空格*',那么从后面开始的最长匹配就是行数后面的所有内容,也就是说,这个表达式最终的结果是产生命令行参数所带文件的行数。看一下man bash可以找到...

计算机上的%是什么意思?
计算机上的%是什么意思?% 又称为百分号,它源于拉丁文中的percentum,意思是百分之一。在计算机领域里,% 表示百分数,一般用于表示一个数字相对于另一个数字的百分比。比如,55% 表示 55 的百分之一,也就是 0.55。在数学与统计学中,% 还可以表示概率、置信度、误差等。在计算机编程中,% 还有...

linux内核top命令中%cpu后有哪些参数?
Linux内核top命令中%CPU后的参数具体说明如下:1. sy参数表示内核花费的CPU时间百分比。若sy数值较高,说明系统处理的进程数量较多,内核在CPU上的占用时间也相应增加。2. id参数代表CPU空闲时间百分比。若id数值较低,表明系统负载较高,可能需要优化资源分配以缓解CPU压力。3. wa参数则用于表示等待I\/O...

linux中的PS1=%是什么?
下面是PS1变量中各特殊符号的含义:\\a 显示系统日期,格式:星期 日期 例:PS1="\\d >" 结果:六 10月 24 > \\A 显示系统时间,格式:HH:MM 例:PS1="\\A >" 结果:21:04 > \\t 显示系统时间,格式:HH:MM:SS (24小时制)例:PS1="\\t >" 结果:21:04:32 > \\T 显示系统...

Linux常用系统管理命令
此时使用的命令就是kill,因为kill是大多数Shell内部命令可以直接调用的。 5.应用实例 (1)强行中止(经常使用杀掉)一个进程标识号为324的进程: #kill -9 324 (2)解除Linux系统的死锁 在Linux中有时会发生这样一种情况:一个程序崩溃,并且处于死锁的状态。此时一般不用重新启动计算机,只需要中止(或者说是关闭)这个...

linux环境i\/o%什么意思
输入输出的标准设备。比如可指定为控制台,通过串口接受用户键盘输入,并送出回显信息。

classpath环境变量中的%是什么意思
调用已设置好的环境变量的意思。WINDOW中是 比如你设置 好你的JAVA_HOME 为c:\/\/jdk1.6 此时你在cmd中 输入echo %JAVA_HOME%你就会看到c:\/\/jdk1.6 设classpath的时候就可用%JAVA_HOME%了

linux中%-2d是什么意思
你问的应该是C语言中的意思吧。d表示是按照整数格式输出;-表示数字的对齐方式为左对齐,默认为右对齐的;中间2表示数字不足2位则补齐至两位,不足位置用空格。

linux 中 -C是什么意思?
首先介绍一个名词“控制台(console)”,它就是我们通常见到的使用字符操作界面的人机接口,例如dos。我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令,例如dos命令就是控制台命令。我们现在要了解的是基于Linux操作系统的基本控制台命令。有一点一定要注意,和dos命令不同的是,Linux的命令...

相似回答