Поиск по сайту:

Некоторые случайные однострочные команды Linux [Часть 2]

Это вторая часть серии однострочных команд Linux, которая сделает вашу работу с командной строкой проще, лучше и быстрее. Первая часть этой серии уже доступна. Возможно, вы захотите прочитать его по ссылке ниже.

  • Некоторые случайные однострочные команды Linux [Часть 1]

Некоторые из приведенных ниже команд взяты из Arch wiki, /r/linux, Askubuntu и Stack Overflow. Вся заслуга принадлежит сообществу. И некоторые из них — мои собственные выводы, основанные на повседневном опыте. Это вторая часть серии. Последующие части мы будем публиковать в конце каждого месяца. Давай начнем, ладно?

Случайные однострочные команды Linux

  1. Давайте начнем эту часть с Emacs. Если в вашей системе установлен Emacs, нажмите CTRL+x и CTRL+e, чтобы открыть редактор Emacs, содержащий все, что вы только что набрали в своем терминале. Например, введите «ls» на своем терминале и нажмите CTRL+x, а затем CTRL+e. Теперь редактор Emacs автоматически откроется с буквой «ls».
  2. Чтобы просмотреть файлы и каталоги в текущем рабочем каталоге, введите:

du -sxh * | sort -h

Самые маленькие элементы будут отображаться сверху.

  1. Чтобы вернуться в предыдущий рабочий каталог из любого места, введите:
cd -

Обратите внимание на пробел между cd и - (тире).

Чтобы вернуться в каталог $HOME из любого места, используйте команду:

cd

Не имеет значения, какой у вас предыдущий рабочий каталог. Команда «cd» перенесет вас из любого места в каталог $HOME.

  1. Иногда я забываю добавить «sudo», когда редактирую файлы конфигурации Apache с помощью редактора vim. Результат? Мне не удалось сохранить файл после внесения некоторых изменений. Если я попытаюсь сохранить, будет выдано сообщение об отказе в доступе. Этот крутой трюк помог мне сохранить файл, отредактированный в vim, без необходимых разрешений.
:w !sudo tee %

Вам не нужно выходить из vim и повторно редактировать файл с разрешением sudo. После внесения изменений просто введите строку выше, чтобы сохранить ее с разрешениями sudo. Это действительно крутой трюк, когда вы забываете добавить «sudo» при редактировании файлов.

  1. Чтобы вызвать команду с определенным префиксом из истории BASH без ее выполнения, введите:
!su:p

Приведенная выше команда вызовет последнюю команду с префиксом «su», но не запустит ее. Как вы видите на рисунке выше, моя последняя команда с префиксом «su» была — sudo netctl restart wlp9s0sktab.

  1. Чтобы постоянно отслеживать вывод файла, используйте эту команду:
tail -f /var/log/pacman.log

Эта команда будет полезна для мониторинга файла, который часто выдает выходные данные.

  1. Чтобы обновить один пакет с помощью менеджера пакетов «APT», используйте:
sudo apt-get install --only-upgrade <package-name>
  1. Если вы случайно изменили или перезаписали файл .bashrc, вы можете восстановить настройки по умолчанию, скопировав копию по умолчанию из папки skel.
cp /etc/skel/.bashrc ~/

Имейте в виду, что эта команда перезапишет все изменения в существующем файле .bashrc.

  1. Чтобы автоматически использовать «ls» при смене каталога, добавьте следующие строки в файл .bashrc.
cd() {        
     builtin cd "$@" && ls -lA
}

Чтобы обновить изменения, внесенные в ваш файл .bashrc, запустите:

source ~/.bashrc

Теперь перейдите в любой каталог. Вы увидите список файлов и папок, включая скрытые элементы. Помните, что иногда вас будет раздражать переход в каталог, содержащий сотни файлов/папок.

  1. Чтобы отобразить общее количество файлов и папок в текущем каталоге, запустите:
echo $(($(ls -l | wc -l) - 1))

Чтобы отобразить общее количество файлов/папок, включая скрытые файлы, введите:

echo $(($(ls -lA | wc -l) - 1))

11. Чтобы загрузить пакет .deb со всеми необходимыми зависимостями без его установки, используйте следующую команду:

sudo apt-get install --download-only vim

Эта команда загрузит пакет «vim» со всеми необходимыми зависимостями, но не установит его.

Для получения более подробной информации перейдите по этой ссылке.

  • Загрузить пакеты с зависимостями локально в Ubuntu

Вы также можете загрузить пакет .rpm со всеми зависимостями, не устанавливая его. Проверьте эту ссылку ниже, чтобы узнать, как это сделать.

  • Как загрузить пакет RPM со всеми зависимостями в CentOS
  1. Чтобы просмотреть все установленные пакеты в системе на базе Debian, запустите:
dpkg -l

Чтобы отобразить установленные файлы и сведения о пути к данному пакету, используйте:

dpkg -L <package-name>

Рекомендуется к прочтению:

  • Как составить список установленных пакетов, отсортированных по дате установки в Linux
  • Как составить список установленных пакетов, принадлежащих определенной группе в Linux
  • Как составить список установленных пакетов из определенного репозитория в Linux
  • Как узнать, установлен ли пакет в Linux и Unix
  1. Чтобы отобразить текущий статус системы, время, продолжительность, список вошедших в систему пользователей и другие сведения о пользователе, запустите:
w

  1. Чтобы отобразить использование диска всеми файлами и каталогами (включая скрытые файлы) в текущем рабочем каталоге в удобочитаемом формате, используйте следующую команду:
du -sch .[!.]* *

Дополнительные примеры команд «du» можно найти по этой ссылке.

  • Как узнать размер каталога в Linux
  1. Иногда вам может потребоваться записать вывод определенной команды в несколько файлов и отправить его своим коллегам, друзьям. Если да, вы можете сделать это, как показано ниже.
uname -r | tee file1 file2 file3

Эта команда записывает вывод команды «uname -r» в файл1, файл2 и файл3. Если файлы не существуют, они будут созданы и записаны выходные данные. Одним из недостатков использования этой команды является то, что она перезапишет содержимое файлов. Если вы этого не хотите, вы можете добавить вывод, используя флаг «-a», как показано ниже.

uname -r | tee -a file1 file2 file3
  1. Чтобы отсортировать файл по алфавиту и отобразить результат в одной строке:
cat <file-name> | tr '|' '\n' | sort | tr '\n' '|' | sed "s/.$/\\n/g"

Например, у меня есть файл «example.txt» со следующим содержимым:

cat example.txt 
abc
cab
bac
bca
cba

Теперь давайте отсортируем содержимое этого файла по алфавиту и выведем результат в одну строку. Для этого запустите:

cat example.txt | tr '|' '\n' | sort | tr '\n' '|' | sed "s/.$/\\n/g" 
abc|bac|bca|cab|cba
  1. Хотите изучить JavaScript, тогда перейдите на следующий сайт.
  • https://www.dwitter.net/

Это поддерживаемый сообществом веб-сайт, на котором люди создают 140-символьные программы JavaScript, создающие интересные визуальные эффекты.

  1. Чтобы удалить определенные символы в данной команде, выполните:
echo 'Hell1o, Welcome1 2to OSTechNix4' | tr -d '1-9'

Приведенная выше команда удалит числа от 1 до 9 и отобразит окончательный результат.

  1. На вашей клавиатуре не работает клавиша BACKSPACE? Не беспокойся! Вы по-прежнему можете удалить символы в Терминале в системе, где клавиша BACKSPACE не работает, нажав клавиши "CTRL+h".
  2. Чтобы просмотреть всех пользователей, которые недавно вошли в систему, введите:

last

Чтобы узнать, когда пользователь в последний раз входил в систему, введите:

last <username>

Чтобы просмотреть все неудачные попытки входа в систему, введите:

sudo lastb
  1. Вы настраиваете тестовый веб-сервер с использованием Nginx? Вы можете использовать этот бесплатный онлайн-генератор конфигурации Nginx для общих целей:
  • https://nginxconfig.io/

Просто введите такие данные, как домен, корень документа и т. д., в соответствующий столбец, и он автоматически сгенерирует конфигурацию Nginx на основе введенных вами данных по мере ввода. Вы можете просто скопировать и вставить его в свой файл /etc/nginx/nginx.conf. Это действительно полезно для целей обучения и тестирования.

  1. Чтобы объединить два файла рядом, каждый в своем столбце, используя TAB в качестве разделителя, вы можете использовать следующую команду:
paste file1 file2

Допустим, у вас есть два файла, а именно file1.txt и file2.txt со следующим содержимым.

cat file1.txt 
Apple
Orange
Mango
cat file2.txt
30
25
40

Если вы используете команду cat для просмотра вывода обоих файлов, результат будет:

cat file1.txt file2.txt 
Apple
Orange
Mango
30
25
40

Но если вы воспользуетесь командой вставки, вы увидите, что поля правильно организованы в аккуратный столбец, как показано ниже.

paste file1.txt file2.txt

  1. Чтобы узнать время последнего доступа к файлу, запустите:
stat -c %x file

Чтобы найти время последнего изменения файла, используйте:

stat -c %y file

Читайте также:

  • Найти и отсортировать файлы по доступу, дате и времени изменения в Linux
  1. Чтобы узнать тип файла, используйте:
file <file-name>

Пример :

file ostechnix 
ostechnix: ASCII text
file image 
image: PNG image data, 330 x 146, 8-bit colormap, non-interlaced

Это может быть полезно, если данный файл не имеет расширения.

  1. Чтобы сохранить вывод нескольких команд в виде одной строки в текстовом файле, команда будет такой:
echo "$(uname -r) $(hostname -i)" >> output.txt

Приведенная выше команда записывает выходные данные команд «uname -r» и «hostname -i» в файл с именем «output.txt».

Третья часть этой серии уже готова и доступна. Нажмите на ссылку ниже, чтобы прочитать ее.

  • Некоторые случайные однострочные команды Linux [Часть 3]

Статьи по данной тематике