我有一个包含数十或数百个帖子的页面,每个帖子都有社交按钮.我只是无法为每个网址生成所有按钮:它太慢了(facebook,g +,twitter,pinterest ......用于数百个链接).所以,我没有动态生成facebook分享按钮,而是使用一个简单的img指向
https://www.facebook.com/sharer.php?u=${url_of_current_post}&t=
Run Code Online (Sandbox Code Playgroud)
当用户点击它时,会打开一个弹出窗口,其中包含facebook生成的内容.
我如何为Pinterest做到这一点?我只找到生成按钮的代码,但我想尽可能避免使用js.有类似下面的东西吗?
http://pinterest.com/pinthis?url=${url_of_current_post}
Run Code Online (Sandbox Code Playgroud)
请不要试图让我使用js按钮,谢谢.
(用sed编写解决方案)
我有一个文件名和目录列表,包括代字号和通配符.例如:
~/docs/file.*
~/my docs/*.txt
...
Run Code Online (Sandbox Code Playgroud)
我读取行并将它们传递给命令(例如rsync):
while read ROW
do
rsync $ROW /my/dest/
done < list.txt
Run Code Online (Sandbox Code Playgroud)
问题是处理文件名中的空格.如果我把$ ROW放在这样的双引号中
rsync "$ROW" /my/dest/
Run Code Online (Sandbox Code Playgroud)
当然bash不会逃脱通配符和波浪号.但如果我不使用引号,则空格会破坏行.
一种可能的解决方案是改变IFS(小心:脚本比我报告的更复杂).另一个解决方案(感谢Patrick Echterbruch的解决方案)是预先逃离空间.但是,以下代码对我不起作用:
while read ROW
do
export NEWROW=$(echo $ROW | sed -e 's/ /\\ /g')
echo "Value: $NEWROW"
ls -1d $NEWROW
done < list.txt
Run Code Online (Sandbox Code Playgroud)
请注意,没有引号传递给ls.文件"〜/ abc/test.txt"存在,但我得到:
Value: ~/saver/a\ b\ c/*.txt
ls: impossibile accedere a ~/saver/a\: Nessun file o directory
ls: impossibile accedere a b\: Nessun file o directory
ls: impossibile accedere a c/*.txt: Nessun file o directory …Run Code Online (Sandbox Code Playgroud) 什么是最好的方式?这是我的解决方案:
echo $PATH | sed "s/:/\n/g" | grep "cuda/bin" | sed "s/\/bin//g" | head -n 1
which nvcc | sed "s/\/bin\/nvcc//"
which nvcc | head -c -10
Run Code Online (Sandbox Code Playgroud)
它们都是基于PATH的.可以找到库来代替.如果PATH中没有CUDA路径,那将会更加健壮.
我在Makefile中使用它.