小编mol*_*lni的帖子

awk 或 sed 只能小写/大写字符串中的一个字符?

有没有办法在某个字符串中只大写/小写一个字符?

输入示例:

syslog_apr_24_30
syslog_mar_01_17
Run Code Online (Sandbox Code Playgroud)

期望的输出:

syslog_Apr_24_30
syslog_Mar_01_17
Run Code Online (Sandbox Code Playgroud)

请注意大写的月初。

我已经尝试过了,awk但我还不够好,无法让它发挥作用。

bash sed awk

13
推荐指数
2
解决办法
2万
查看次数

bash 使用变量查找

我有一个我不明白的问题。这很简单,它应该可以工作,但事实并非如此。= EDITED 正是我从终端看到的内容= 我有一个文件名列表:

[molni@archlinux picasa_album]$ cat LIST
IMG_9282.JPG
IMG_9287.JPG
IMG_9300.JPG
IMG_9324.JPG
IMG_9329.JPG
IMG_9463.JPG
IMG_9412.JPG
IMG_9562.JPG
IMG_9511.JPG
IMG_9607.JPG
Run Code Online (Sandbox Code Playgroud)

并希望通过 find 命令搜索列表中的每个文件的路径:

[molni@archlinux picasa_album]$ for i in `cat LIST`; do find /mnt/c/e-m10/  -name "$i";  done
[molni@archlinux picasa_album]$ 
Run Code Online (Sandbox Code Playgroud)

没有结果,当我用它换回 echo $i 时(检查变量 $i 是否正常,它有效)

[molni@archlinux picasa_album]$ for i in `cat LIST`;do echo "$i" ;  done
IMG_9282.JPG
IMG_9287.JPG
IMG_9300.JPG
IMG_9324.JPG
IMG_9329.JPG
IMG_9463.JPG
IMG_9412.JPG
IMG_9562.JPG
IMG_9511.JPG
IMG_9607.JPG
[molni@archlinux picasa_album]$ 
Run Code Online (Sandbox Code Playgroud)

当我手动执行时,设置变量(无循环)它可以工作:

[molni@archlinux picasa_album]$ i=IMG_9607.JPG
[molni@archlinux picasa_album]$ find /mnt/c/e-m10/ -name "$i"        
/mnt/c/e-m10/IMG_9607.JPG
[molni@archlinux picasa_album]$ 
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

shell bash find text-processing

3
推荐指数
1
解决办法
1263
查看次数

标签 统计

bash ×2

awk ×1

find ×1

sed ×1

shell ×1

text-processing ×1