Преломление это лучший подход.
Сначала команда поиска запускается в текущем каталоге. , ограничьте поиск глубиной только текущим каталогом, используя значение 1 и тип поиска, ограниченный только файлами (тип f), и использовать фактические свойства файла, если он получает символическую ссылку, используя -follow. т. е. следовать символической ссылке.
i.e до здесь
найти. -maxdepth 1-type f -follow
оттуда просто вырезать второе поле (-f2), если разделителем является/(-d /), чтобы избавиться от точки - текущий каталог, который вы увидите из find листинга.
это до здесь find. -maxdepth 1-type f -follow | вырезать -d/-f2
затем трубы выход в xargs и запустить команду readlink, которая печатает сам файл, связанный с символической ссылке в режиме канонизировать (дать имя связанного файла цепи) Check example here
Тогда выход передается для вырезания для получения 7-го и 14-го полей, если разделителем является «\».
Вы можете увидеть любой вывод здесь, только если у вас есть ссылка на эту глубину, но это возможно.
И затем с sed ////g 'выводится вывод «\» (экранирование выполняется /) и заменяется пробелом «». глобальный режим поиска и замены sed - заменить все возникшие пробелы \ "" "".
Что такое намерение с помощью команды? Я думаю, что он ищет символические ссылки, а затем находит фактический связанный файл. Я не совсем понимаю причину резки только 7-го и 14-го полей, а затем замены косой черты. Вероятно, пользователь искал особую глубину каталогов.
'man cut' покажет вам. Удачи. – shellter
Что делать xargs -I% readlink -f% означает? – ALBI
sed ////g 'неправильная команда, может быть, она должна выглядеть как' s/\ ///g ' – insider