ls -l file_* |
awk '{system("echo mv -v -- " $9 " file_" toupper($6) $8);}'
Для реального переименования файла следует удалить слово echo
.
Пояснение
ls -l file_* | awk
-перечислите все файлы и отправьте их на awk
. system()
-выполнить команду оболочки. mv -v -- " $9 " file_" toupper($6) $8
-mv
-обычная команда mv
, выполняемая в оболочке. toupper(str)
-возвращает копию строки str , в которой все символы нижнего регистра в строке str переведены в соответствующие им аналоги в верхнем регистре. $6
-месяц :авг, июль, февраль $8
-год :1938, 1947, 2037. $9
-имя файла :файл _1, файл _10, файл _100. Файлы
$ ls -l file_*
-rw-rw-r-- 1 user user 0 Aug 1 1938 file_1
-rw-rw-r-- 1 user user 0 Jul 1 1947 file_10
-rw-rw-r-- 1 user user 0 Feb 1 2037 file_100
Выход
mv -v -- file_1 file_AUG1938
mv -v -- file_10 file_JUL1947
mv -v -- file_100 file_FEB2037
Zswap — это функция, представленная в ядре Linux версии 3.11. Поскольку CentOS7 поставляется с ядром версии 3.10, он не поддерживает Zswap из коробки. Но включить его можно после замены ядра на более новую версию, указанными вами командами.
Кстати, если у вас уже есть обновленная версия ядра, то я подозреваю, что это может быть связано с тем, что вы вызвали chmod
для системных файлов, что может рассматриваться как проблема безопасности.
Попробуйте сначала решить эти проблемы, а потом расскажите мне, хорошо ли у вас получается.:)
ссылки, которые могут пригодиться:
полные шаги для компиляции настроенного ядра и его установки на машине с CentOS 7:
# get source, use kernel version v4.11-rc8 as an example
git clone --depth 1 --branch v4.11-rc8 git@github.com:torvalds/linux.git
cd linux
# get default config file
# do nothing in GUI and save, then default config would be saved in.config
make menuconfig
# install build dependencies
sudo yum groupinstall "Development Tools"
sudo yum install ncurses-devel
sudo yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel openssl-devel
# new dependency to build kernel v4.x (CentOS 7 uses v3.10.x)
sudo yum install bc
# compile
make all -j
sudo make modules_install
sudo make install
# config grub
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo cat /boot/grub2/grub.cfg
# option depends on order in grub.cfg, 0 is the first one
sudo grub2-set-default 0
# check selection
sudo grub2-editenv list
# restart system with new kernel version
sudo reboot