Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash问题:sed命令替换';C:\Music';用e'~/桌面/音乐&x27; 输入_Bash_Sed - Fatal编程技术网

Bash问题:sed命令替换';C:\Music';用e'~/桌面/音乐&x27; 输入

Bash问题:sed命令替换';C:\Music';用e'~/桌面/音乐&x27; 输入,bash,sed,Bash,Sed,我有一个播放列表 #file 1: i.m3u C:\Users\curlywei\Music\........\a.mp3 C:\Users\curlywei\Music\........\b.mp3 以上文件位于同一文件夹中 预期产出 命令我做什么 以美元表示的i的(ls*.m3u | tr'\n');做sed's#\ \ g'-e's#C:/Users/curlywei/Music#~/Desktop/Music#g'$i;完成 实际结果 只有\被替换为/类似于: 用于*.m3u中的文

我有一个播放列表

#file 1: i.m3u
C:\Users\curlywei\Music\........\a.mp3
C:\Users\curlywei\Music\........\b.mp3
以上文件位于同一文件夹中

预期产出 命令我做什么 以美元表示的i的
(ls*.m3u | tr'\n');做sed's#\ \ g'-e's#C:/Users/curlywei/Music#~/Desktop/Music#g'$i;完成
实际结果 只有
\
被替换为
/

类似于:

用于*.m3u中的文件;做
printf“%s\n”1$s/^C:\\Users\curlywei~/桌面!`'1$s!\\!/!g'w|ed-s“$file”
完成

对于每个文件,使用
ed
(文件编辑器,而不是流编辑器
sed
)打开它,在每一行上,首先替换前导路径,然后用正斜杠替换所有反斜杠,最后保存文件


请参阅。

谢谢!这对我来说是一个很好的经验!
#file 2: j.m3u
C:\Users\curlywei\Music\........\x.mp3
#file 1: i.m3u
~/Desktop/Music/......./a.mp3
~/Desktop/Music/......./b.mp3
#file 2: j.m3u
~/Desktop/Music/......./x.mp3
#file 1: i.m3u
C:/Users/curlywei/Music/......../a.mp3
C:/Users/curlywei/Music/......../b.mp3
#file 2: j.m3u
C:/Users/curlywei/Music/......../x.mp3