Если / является корнем, остальные следующие
Примечание Некоторые из них зависят от вашего дистрибутива
/bin
:Основные двоичные файлы (программы или исполняемые файлы)/boot
:Ботинок файлы, то есть все необходимые элементы для GRUB (или другого )загрузчика /cdrom
(зависит от вашего дистрибутива ):Точка монтирования для привода CD/DVD /dev
:Файлы устройств, эти файлы представляют (они на самом деле являются реальными файлами )устройства физически (или виртуально )прикреплены /etc
:Файлы конфигурации /home
:домашние папки для пользователей /lib
:общие библиотеки для установленных двоичных файлов /lost+found
:Восстановлены файлы, которые ядро (или некоторые двоичный файл )пытался спасти /media
:съемный носитель /mnt
:место установки (, но можно установить где угодно)/opt
:необязательные пакеты, которые вы хотите установить, которые не имеют смысла размещать в другом месте (, хотя это спорный момент)/proc
:Файлы ядра и процесса. Похоже на /dev. /root
:домашний каталог пользователя root /run
:файлы приложений сохраняют здесь свое состояние во время работы /sbin
:Больше двоичных файлов (в основном для sudo
пользователя)/selinux
:при использовании SELinux (Centos, Redhat Enterprise и т. д. )содержит специальные файлы, используемые SELinux /srv
:каталог данных для служб, например, веб-сервер может использовать его для хранения файлов для «обслуживания» /tmp
:временные файлы /usr
:Двоичные файлы пользователя /var
:лог-файлы в /var/log и другие файлы данных.обычно относится к двоичным файлам /usr Источник:https://www.howtogeek.com/117435/htg-explains-the-linux-directory-structure-explained/
(Немного перефразируя)
Может быть инструмент, который может сделать это изначально, но я смог сделать это с помощью следующей функции:
math_func () {
local _n1=$1
local _op=$2
local _n2=$3
local _p
local _a
if [ "${#_n1}" -gt "${#_n2}" ]; then
_p=${#_n1}
else
_p=${#_n2}
fi
_a=$(echo "scale=0; $_n1 $_op $_n2" | bc -l)
printf "%0${_p}d\n" "$_a"
}
Это также может выполнять вычитание, умножение и деление (, хотя вы должны экранировать оператор умножения, и он не будет обрабатывать числа с плавающей запятой ).
Он проверит длину обоих входных чисел, и в зависимости от того, что больше, будет использоваться для установки нулевого размера заполнения вывода.
Вы называете это следующим образом:
$ math_func 000 + 1
001
$ math_func 000000500 \* 5
000002500
$ math_func 010 / 2
005
$ math_func 2 - 1
1
Ну, я предполагаю несколько вещей, но в вопросе не упоминались никакие условия!
Если вы заранее знаете, какие числа вы хотите добавить, вы можете использовать простое решение, подобное этому,
необходимо передать числа для добавления в качестве аргумента.
Конечно, не оптимально, но просто мысль!
#!/bin/bash
num1=$1
num2=$2
temp=$(( $num1 + $num2 ))
sum=$(printf "%03d" ${temp})
echo "Sum is: $sum"
ВыходSum is: 001