Преобразуйте каталог в файл или файл в каталог

Быстрый взлом:

for ip in $(cut -d" " -f 4 < INPUT_FILE.txt | sort -u); do 
   grep "$ip" INPUT_FILE.txt | head -n1
   grep "$ip" INPUT_FILE.txt | tail -n1
   echo
done

Однако это не очень быстро, потому что это циклично выполняется через файл журнала 3 раза. И вывод не находится в том же порядке, имеет Ваш пример; я не уверен, важно ли это для Вас.

15
04.03.2014, 16:21
5 ответов
[1120957]Это невозможно для любой Unix или Linux, к которой я когда-либо прикасался.

Под некоторыми старыми Unix'ами каталогами являются файлы, специально помеченные, но все же файлы. Раньше, например, можно было читать каталог с [1121393]cat[1121394] под SunOS. Многие современные файловые системы могут иметь каталоги в виде деревьев B+, или какую-либо другую структуру данных на диске. Поэтому для превращения файла в каталог или наоборот всегда требуется удаление и повторное создание с тем же именем.[1120960].

12
27.01.2020, 19:49
[1121053] Нет такой команды, потому что в ней не было бы абсолютно никакого смысла. Ваш вопрос похож на вопрос о том, как превратить коробку в плоский прямоугольник. Что бы Вы сделали с вещами в ящике (каталоге)? Как бы прямоугольник соответствовал ящику, из которого он вышел?

Файлы и каталоги служат совершенно разным функциям. Хотя каталог [1121494]- это действительно файл [1121495] в *nix-системах, это относится только к внутренностям системы, а не к тому, что вы, пользователь, видите. Таким образом, преобразование файла в каталог или наоборот всегда будет включать в себя удаление файла и создание каталога. Лучшее, на что вы можете надеяться, это использовать тот же самый inode, но опять же, не в этом дело.[1121056].

5
27.01.2020, 19:49
[1120967] Создайте функцию, чтобы делать то, что вы хотите. ([1121399]bash[1121400] или другие Bourne/POSIX как предполагается shell)

brew info git

Я сознательно использую [1121401]rmdir[1121402], который не будет работать, если [1121403]adir[1121404] не является каталогом или не пустым (нет [1121405]-f[1121406], чтобы заставить его работать). [1121407]touch[1121408] будет работать только в случае успеха [1121409]rmdir[1121410].

Вы можете поместить определение функции в файл настройки оболочки ([1121411].bashrc[1121412] для [1121413]bash[1121414]).[1120972].

2
27.01.2020, 19:49

Сначала получите доступ к терминалу и выполните ls -al file, при этом file будет тем файлом, который вы хотите преобразовать обратно в АКТУАЛЬНУЮ папку. Если в списке есть файлы и подкаталоги, это означает, что ваш "файл" ранее был папкой с реальным содержимым, и вы можете продолжить:

Execute:

sudo chmod 700 /

OR

sudo chmod 700 file

Restart the system and get terminal access again and execute:

sudo chmod 744 /

OR

sudo chmod 744 file

REMEMBER: "file" должен быть заменен на файл, который вы хотите преобразовать обратно в АКТУАЛЬНУЮ папку.

Это просто произвольный способ решения проблемы, но он создает аномалии с разрешениями, которые вы можете либо использовать fsck -f для исправления (разумеется, не смонтированный), либо вручную устанавливать новые разрешения по мере необходимости.

AGAIN, это просто проверенный способ избежать необходимости удалять файл, который ранее был непустой папкой.

1
27.01.2020, 19:49

Тем, кто задается вопросом, зачем вам это нужно, подпишитесь на эту тему:

https://community.linksys.com/t5/Wireless -Routers / Media-files-change-to-folder-types / td-p / 504192 / highlight / true

По-видимому, ошибка в прошивке перевернула бит в записи каталога для файла, заставив ОС думать, что это папка вместо файла.

Хотя у меня нет рассматриваемого маршрутизатора Linksys, что-то изменило все мои файлы .jpg на пустые папки. Если есть способ перевернуть бит (или что-то еще), в котором говорится, что запись каталога NTFS является папкой, а не файлом, я хотел бы знать об этом.

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

2
27.01.2020, 19:49

Теги

Похожие вопросы