Попробуйте find
команда.
find /somedir1/somedir2 -name *.txt -name *.log -mtime 2w -delete
Изменение -delete
кому: -print
для пробного прогона.
Нет необходимости иметь отдельный домашний раздел. Единственная проблема этой конфигурации заключается в том, что если вам когда-либо потребуется переустановка с нуля, то вам потребуется создать резервную копию/home, так как корневой раздел обычно снова формируется при новой установке. Если вы разделяете/home, вы можете безопасно переустановить хранение данных.
-121--244278-Можно использовать команду «найти» следующим образом
find ./ -name "libreoffice?.?"
-121--55931- Создайте функцию в ~/.bashrc
:
function set-title() {
if [[ -z "$ORIG" ]]; then
ORIG=$PS1
fi
TITLE="\[\e]2;$*\a\]"
PS1=${ORIG}${TITLE}
}
Затем используйте новую команду для установки заголовка терминала. Он также работает с местами в имени
set-title my new tab title
. Впоследствии можно снова использовать set-title
(исходный PS1 сохраняется как ORIG
).
Название пользователя
код был удален 1 из Tranme-Terminal 3.14
. Чтобы установить название, вы можете использовать escape Sequence:
printf "\e]2;YOUR TITLE GOES HERE\a"
или E.g. С Bash
:
PROMPT_COMMAND='echo -ne "\033]0;YOUR TITLE GOES HERE\007"'
1:
PROMPT_COMMAND='echo -ne "\033]0;YOUR TITLE GOES HERE\007"'
1: см. GNOME BUG 724110 и GNOME BUG 740188 .
поместите это в .bashrc:
function title() {
p1='echo -ne "\033]0;'
p2='\007"'
PROMPT_COMMAND=$p1$@$p2
p1=
p2=
}
В новых версиях gnome-terminal просто выброшены самые полезные профессиональные функции :-(
Я попытался настроить и запустить старую версию gnome-terminal, а также сравнил альтернативы.
Если terminator
для вас слишком экзотичен, то mate-terminal
- отличный вариант! Он является форком gnome-terminal и просто сохраняет все хорошие функции:
вы можете открывать несколько вкладок из командной строки, давая им разные названия
mate-terminal --tab -t "aaa" --tab -t "bbb" --tab -t "ccc"
вы можете настроить сочетание клавиш (я использую Ctrl+Shift-i) для установки title
В качестве дополнения к ответу @Weston Ganger, если вы хотите автоматически установить заголовок при открытии нового терминала Gnome, добавьте его в конец вашего~/.bashrc
:
if [ ! -z "$SET_TITLE" ]; then
set-title $SET_TITLE;
export SET_TITLE=;
fi
Затем запустите терминал, например:
gnome-terminal --tab -e 'bash -c "export SET_TITLE=\"my title\"; bash -i"'
и автоматически запустится set-title
, чтобы применить заголовок.
однострочное решение, добавьте следующую строку в ваш.bashrc
alias tab_name='read -p "Name to Assign:" tabname ; printf "\e]2;$tabname\a" '
теперь введите имя вкладки _в терминале, т.е.
user:~$ tab_name
Name to Assign: ( type desired name here! )
Готово
Мой новый сценарий от марта 2021 г.:
Теперь у меня есть новая версия функции "установить заголовок". Чтобы найти последнюю версию, найдите мой ~/.bash_aliases
файл где-то здесь . Вот как это может выглядеть. Теперь у него есть меню справки -h
, и вместо того, чтобы полагаться на резервную копию переменной PS1
при первом запуске, что довольно сложно, он просто использует команду sed
'stream 'editor. и регулярное выражение для удаления существующей строки заголовка из переменной PS1
.
gs_set_title() {
CMD="gs_set_title"
# Help menu
if [ "$1" == "-h" ] || [ "$1" == "-?" ]; then
echo "Set the title of your currently-opened terminal tab."
echo "Usage: $CMD any title you want"
echo " OR: $CMD \"any title you want\""
echo " OR (to make a dynamic title which relies on variables or functions):"
echo " $CMD '\$(some_cmd)'"
echo " OR $CMD '\${SOME_VARIABLE}'"
echo "Examples:"
echo " 1. static title"
echo " $CMD my new title"
echo " 2. dynamic title"
echo " $CMD 'Current Directory is \"\$PWD\"'"
echo " OR $CMD 'Date and time of last cmd is \"\$(date)\"'"
return $EXIT_SUCCESS
fi
TITLE="$@"
# Set the PS1 title escape sequence; see "Customizing the terminal window title" here:
# https://wiki.archlinux.org/index.php/Bash/Prompt_customization#Customizing_the_terminal_window_title
ESCAPED_TITLE="\[\e]2;${TITLE}\a\]"
# Delete any existing title strings, if any, in the current PS1 variable. See my Q here:
# https://askubuntu.com/questions/1310665/how-to-replace-terminal-title-using-sed-in-ps1-prompt-string
PS1_NO_TITLE="$(echo "$PS1" | sed 's|\\\[\\e\]2;.*\\a\\\]||g')"
PS1="${PS1_NO_TITLE}${ESCAPED_TITLE}"
}
Оригинальный ответ:
@Weston Ganger написал эту функцию(и разместил ее здесь ), чтобы поместить в~/.bashrc
:
function set-title() {
if [[ -z "$ORIG" ]]; then
ORIG=$PS1
fi
TITLE="\[\e]2;$*\a\]"
PS1=${ORIG}${TITLE}
}
Затем вы можете установить название терминала, вызвавset-title TERMINAL NAME
(кавычки вокруг имени необязательны ).
Мне это показалось довольно загадочным (см. мои комментарии под его ответом ), так что прошлой ночью я провел несколько часов за чтением и изучением, чтобы понять, что, черт возьми, он сделал и почему это сработало. Вот что я нашел:
gnome-terminal
3.16.2 или около того(см. комментарии к этому ответу ), «опция --title
больше не поддерживается». В противном случае вы бы просто сделали gnome-terminal --title="my title"
, , как я делал здесь . $@
вместо $*
для представления всех входных аргументов в приведенном выше сценарии.По-видимому, $@
менее подвержен ошибкам -и более совместим, поскольку это способ POSIX для представления «всех входных аргументов». Поэтому в моей версии ниже я использую $@
вместо $*
. \[\e]2;new title\a\]
, и чтобы применить этот заголовок к окну терминала, все, что вам нужно сделать, это изменить его «Строка подсказки 1» или PS1
переменную . ], добавив эту escape-последовательность «установить заголовок» после вашей текущей строки приглашения 1, например:PS1="${PS1}\[\e]2;new title\a\]"
. Поскольку gnome-terminal
больше не поддерживает аргумент --title
, это, по-видимому, единственный способ установить заголовок.А теперь моя версия функции Уэстона Гангера с обширными пояснительными комментариями. Это войдет в мои файлы точек , чтобы я никогда не потерял его:
# Set the title string at the top of your current terminal window or terminal window tab
set-title() {
# If the length of string stored in variable `PS1_BAK` is zero...
# - See `man test` to know that `-z` means "the length of STRING is zero"
if [[ -z "$PS1_BAK" ]]; then
# Back up your current Bash Prompt String 1 (`PS1`) into a global backup variable `PS1_BAK`
PS1_BAK=$PS1
fi
# Set the title escape sequence string with this format: `\[\e]2;new title\a\]`
# - See: https://wiki.archlinux.org/index.php/Bash/Prompt_customization#Customizing_the_terminal_window_title
TITLE="\[\e]2;$@\a\]"
# Now append the escaped title string to the end of your original `PS1` string (`PS1_BAK`), and set your
# new `PS1` string to this new value
PS1=${PS1_BAK}${TITLE}
}
set-title my tab 1
ИЛИset-title "my tab 1"
set-title $PWD
ИЛИset-title "$PWD"
set-title '$PWD'
-этот заголовок обновляет текущий рабочий каталог каждый раз, когда вы cd
переходите на новый каталог!set-title '$(date "+%m/%d/%Y - %k:%M:%S")'
-это обновляет заголовок до новой даты и времени каждый раз он меняет и вы вводите новую команду терминала! Формат выглядит так:02/06/2020 - 23:32:58
У меня была та же проблема, и я обнаружил, что нет простого способа установить заголовок вкладки с помощью правого щелчка мыши (так, как я и большинство моих коллег привыкли ). В то же время это так раздражало :(. Так что в нашем случае решением было переключить терминал. Итак, ищите альтернативы, такие как сакура и т. Д., И, наконец, остановились на терминале xfce -, используйте приведенную ниже команду для его установки
sudo apt-get install xfce4-terminal
Он предоставляет профиль и команду для щелчка правой кнопкой мыши и изменения имени вкладки. Все остальные функции аналогичны Gnome
У меня -t
параметр все еще работает (gnome -terminal v3.36.1.1 ), но только во время выполнения команды:
gnome-terminal --tab -t browser-sync -- npm run sync
поэтому в приведенном выше примере, когда синхронизация браузера -, запущенная скриптом npm, выполняется -, заголовок есть, и когда он останавливается, вкладка закрывается, лол. Хорошо, если вы просто
gnome-terminal --tab -t my-title
без команды -вы все равно увидите «мой -заголовок» в заголовке вкладки, но только на доли секунды.