Обратите внимание, что эта проблема также затрагивает WindowMaker. Теперь вы все еще можете перемещать окна в wmaker, удерживая клавишу ALT и перетаскивая окно. В том числе и стим-клиент.
Есть ли аналог в Awesome?
Это все еще далеко от оптимального, но это обходной путь.
Не могу сказать, что знаю конкретную команду, которая сделает это за вас. Но вы можете сделать это, просто используя хеширование.
Наивный пример ниже:
#!/bin/bash
#...some stuff to get the files...
# Get hashes for all source paths
for srcFile in "${srcFileList[@]}"
do
srcHashList+="$(md5sum "$srcFile")"
done
# Get hashes for all destination paths
for dstFile in "${dstFileList[@]}"
do
dstHashList+="$(md5sum "$dstFile")"
done
# Compare hashes, exclude identical files, regardless of their path.
for srci in "${!srcHashList[@]}"
do
for dsti in "${!dstHashList[@]}"
do
match=0
if [ "${srcHashList[$srci]}" == "${dstHashList[$dsti]}" ]
then
match=1
fi
if [ $match != 1 ]
then
newSrcList+=${srcFileList[$srci]}
newDstList+=${dstFileList[$dsti]}
fi
done
done
#...move files after based on the new lists
Это определенно можно было бы сделать чище, особенно если вас интересуют только файлы с идентичными путями друг к другу. Вероятно, это также можно было бы сделать за линейное время, но общая концепция будет работать.