Если запускаешь скрипт, то линукс по умолчанию запускает отдельный баш процесс, который выполняет скрипт. Твой баш процесс и баш процесс скрипта естественно имеют разную историю.
Но, команды, которые были выполнены внутри скрипта, в историю не записывают, запишется только сам запуск скрипта.
Если хочешь скрыть выполнение единичной команды, в баш просто пишешь пробел и команду - она не попадет в историю.
(потому что обычно переменная HISTCONTROL имеет значение ignorespace, иначе ее нужно установить:
HISTCONTROL=ignorespace)
Вкратце, логика хистори такова:
все команды сохраняются в памяти шелла.
При корректном выходе, из памяти оно сохраняется в файл.
Если запустить скрипт обычным способом, он же запускает НОВЫЙ шелл, у которого в памяти будет не то, что было выполнено, а то, что уже скинуто в файл.
поэтому можно запустить скрипт без запуска дочернего баш-процесса.
Пример:
myscript.sh: history
запуск:
./myscript.sh
выведет только то, что в файле
запуск
source ./myscript.sh
выведет последние команды текущего шелла
p.s. у команды source есть алиас - точка, поэтому часто можно увидеть так:
. ./myscript.sh
тут не нужно путать первую и вторую точку - первая это команда source, вторая - указание что это текущая директория ./
с пайпом рут не нужен, просто на файловой системе пайп и доступ обоим пользователям.
read можно в цикл обернуть, чтобы вычитывать все что туда пишет другой юзер (ну или если не на баш, просто вычитывать потихоньку)
залогиниться и умел в командную строку - разные вещи.
у меня малой тоже в два года мог напечатать на компе буквы, и не было проблем с тем, чтобы сказать ему "напиши логин и пароль". Но это не тоже самое, и никакого отношения к программированию это не имеет.
SHA_bash,
А пораскинуть мозгами и внимательнее посмотреть на свой вопрос ОБЪЕКТИВНО?
Я вот не вижу никаких подвохов - просто две команды.
Ты попробовал их выполнить?
Если да, то что конкретно не получилось? Какая возникла проблема, что пришлось обратиться сюда?
1. операция непрерывного архива без сжатия не выйдет. А чем выше степень сжатия и больше размер блока, тем больше файлов может попасть в неделимый блок
2. Распаковка сильно сжатого и слабо сжатого отличается обычно слабо, ибо таков алгоритм.
Там говорится, что если имена не зашифрованы, а содержимое зашифровано, то рар все равно шифрует чек суммы оригинальных файлов (нужны для проверки, что файл распакован корректно). А по чек суммам можно попробовать найти оригинальные файлы распакованные и имея зашифрованный и расшифрованный файл на руках, взломать пароль и расшифровать остальные файлы.
То есть рар говорит, что даже если имена файлов не зашифрованы, он все равно кое-что шифрует.
Но ведь по имени файла тоже можно догадаться о многом. Например для jpg файлов, можно догадаться что начало файла будет идти с сигнатуры, например FFD8FFE00010JFIF.
И для многих других файлов можно вычислить его заголовок, а то и содержимое целиком, по какому-нибудь ico файлу.
Сжатие к шифрованию особо не относится, но самое зло это если сжать solid, зашифровать имена файла, и первым файлом в архив поместить самый здоровенный файл, таким образом увеличив время распаковки любого файла и уменьшив количество перебора в секунду естественным путем.
Зачем идти на дополнительные риски, когда можно сразу нормально прописать в договоре.
Не всегда можно сразу прописать в договоре в конкретной компании. Зачем идти на дополнительные риски, пытаясь устроитсья в другую компанию, если тут уже оффер? Не забывайте, что такая практика в основном касается стажеров/джунов, редко мидов и почти никогда остальных.