find -maxdepth 1 -type f -printf . | wc -c
-maxdepth 1
сделает его нерекурсивным, find
будет рекурсивным по умолчанию -тип f
будет включать только файлы -printf.
- это мило. он печатает точку для каждого файла вместо имени файла, и теперь он может обрабатывать любое имя файла, а также сохраняет данные; нам просто нужно посчитать точки :) | wc -c
подсчитывает символы Со временем это изменилось:
Сначала был /etc/motd
(статический).
Затем в Ubuntu появился собственный пакет update-motd
, основанный на скрипте, вызываемом из cron.
Наконец, PAM скопировал идею Ubuntu о /etc/update-motd.d/, и поэтому Debian и другие системы также имеют такое же поведение.
Здесь есть объяснение
https://ownyourbits.com/2017/04/05/customize-your-motd-login-message-in-debian-and-ubuntu/
Вот как сейчас все так: PAM просто прочитает /var/run/motd.dynamic
и /etc/motd
, если он существует (вставить из поста)
/etc/motd
— классический статический файл. Больше не существует в Ubuntu 16.04 LTS, даже в виде символической ссылки на /var/run/motd. Однако если он создан, его содержимое также будет напечатано. /var/run/motd
— это использовалось в первой реализации Ubuntu. Он больше не используется. Он просто игнорируется PAM. /var/run/motd.dynamic
— это то, что сейчас отображается при входе в систему. Он обновляется /etc/init.d/motd при каждой загрузке. Он также обновляется с помощью PAM, запуская сценарии в /etc/update-motd.d/, если они существуют. /etc/motd.tail
— пакет Ubuntu, используемый для заполнения /etc/update-motd.d. Один из них будет проверять содержимое этого файла, чтобы было легко добавить статический контент. Этот скрипт больше не существует в пакете, поэтому файл не имеет ожидаемого эффекта. Пример из поста
mkdir /etc/update-motd.d
rm -f /etc/motd # in Debian still exists
cat > /etc/update-motd.d/10logo <<EOF
#!/bin/sh
echo
cat /etc/issue
EOF
cat > /etc/update-motd.d/20updates <<'EOF'
#!/bin/sh
echo
echo "uptime is $( uptime )"
echo "date is $( date )"
EOF
chmod a+x /etc/update-motd.d/*
Вы также можете попробовать эти файлы для выполнения скрипта.
Для чего используется /etc/profile
? Эти файлы используются для установки элементов среды для пользовательской оболочки. Элементы, такие как umask, и переменные, такие как PS1 или PATH.
Для чего используется ~/.bashrc
? Этот файл предназначен для установки псевдонимов команд и функций, используемых пользователями оболочки bash.
Когда используются эти файлы? Разница проста: /etc/profile
выполняется только для интерактивных оболочек, а ~/.bashrc
выполняется как для интерактивных, так и для не -интерактивных оболочек. На самом деле в Ubuntu /etc/profile
напрямую вызывает ~/.bashrc
.
(Источник:https://bencane.com/2013/09/16/understanding-a-little-more-about-etcprofile-and-etcbashrc/)