Я нашел этот документ, который я сделал однажды:
Щелкните правой кнопкой мыши на панели задач и выберите "Добавить в панель...". ". Затем выберите "Custom Application Launcher" и нажмите "Add".
Введите информацию:
Тип:
Application
Name:
application name
Command:
команда для запуска приложения
Комментарий:
любой комментарий
PS: в своем комментарии я сказал, что вы можете выбрать иконку, но похоже, что нет, извините :/
Вот решение с использованиемsed
for i in *
do
mv $i $( echo $i | sed 's/p[[:digit:]]*\.\([^#]*\)\#.*/\1/' )
done
Адресат создается с помощью sed
путем поиска p
, за которым следует любое количество цифр, за которым следует точка. Символы от точки и далее до символа #
запоминаются в регистре, и все имя файла заменяется запомненными символами .
Если у вас есть perl
версия rename
(, иногда называемая ранее prename
), вы можете применить замену регулярного выражения:
rename -n 's/^.*?\.(.*?)#.*/$1/' *
Если вы не понимаете регулярные выражения, (RE ), их стоит изучить.
s/xx/yy/
-заменить xx
наyy
^
-соответствует неявному началу -строки -.*?
-соответствует как можно более короткой строке из ноль или более символов чего-либо при условии соответствия остальной части шаблона \.
-соответствует буквальной точке.
(символ .
представляет что угодно , но \.
является буквальной точкой)(
... )
сопоставить шаблон внутри скобок и присвоить ему номер совпадения 1..9; позже упомянутый$1
(второй (
... )
будет $2
и т. д.)#
-буквенный символ .*
-самое длинное совпадение, которое составляет ноль или более символов чего-либо(.
равно чему угодно и *
означает _ноль или более предшествующего элемента)Удалите-n
("нет действий" ), когда вы будете уверены, что это будет работать. Замените его на -v
, чтобы увидеть, что на самом деле происходит, или просто опустите его для бесшумной работы.
Вот awk
скрипт, выполняющий эту задачу:
Только для печати/отладки:
awk 'match($0,/(^[^\\.]+.)([^#]+)/,m){print "mv "$0" "m[2] }' input.txt
Переименовать:
awk 'match($0,/(^[^\\.]+.)([^#]+)/,m){system("mv "$0" "m[2])}' input.txt
input.txt
p1.uniquenameA#blah_a
p2.uniquenameB#blah_b
p3.uniquenameC#blah_c
p4.uniquenameD#blah_d
p5.uniquenameE#blah_e
p6.uniquenameF#blah_f
p7.uniquenameG#blah_g
p8.uniquenameH#blah_h
p9.uniquenameI#blah_i
p10.uniquenameJ#blah_j
выход
mv p1.uniquenameA#blah_a uniquenameA
mv p2.uniquenameB#blah_b uniquenameB
mv p3.uniquenameC#blah_c uniquenameC
mv p4.uniquenameD#blah_d uniquenameD
mv p5.uniquenameE#blah_e uniquenameE
mv p6.uniquenameF#blah_f uniquenameF
mv p7.uniquenameG#blah_g uniquenameG
mv p8.uniquenameH#blah_h uniquenameH
mv p9.uniquenameI#blah_i uniquenameI
mv p10.uniquenameJ#blah_j uniquenameJ