【发布时间】:2016-09-17 08:04:24
【问题描述】:
我有下面的脚本来提取 Gedit 中当前打开的文件路径。
#!/bin/bash
origPath=$GEDIT_CURRENT_DOCUMENT_URI
if [[ $origPath == *"smb"* ]]
then
finalPath=`php -f /var/www/html/pathswapcmd.php smb_path=$origPath`;
else
finalPath=$origPath;
fi
## echo -n $finalPath;
echo -n $finalPath | sed 's/^.*app/app/p' | xclip -sel clip;
exit;
通常我的系统中有 Magento 文件,所以我的路径只需要从 app、skin 文件夹等开始。
现在,当我尝试使用 sed 删除 app 之前的所有内容时,它会删除,但它会使用 Ubuntu 文件夹管理器地址栏中无法识别的垃圾字符(当然)将路径分开三倍。
我想要从sed 命令中删除重复行的简单而清晰的解决方案。
【问题讨论】:
-
php部分在哪里?
-
@Epodax
finalPath=`php -f /var/www/html/pathswapcmd.php smb_path=$origPath`;? -
不是粗鲁,但知道php脚本输出是否相关?好像我删除了
sed行,那么它给我的路径就好了,并且在剪贴板中只有一次,但是当我使用sed时,它给出了由垃圾字符分隔的重复路径(可能是换行符)。我只是我使用了php脚本来检测路径是基于smb还是基于ftp。
标签: php bash magento ubuntu sed