Почему команда «ls» * «" ничего не показывает?

ls "*" 

Это ничего не показывает в моем каталоге. Зачем?

Разве это не * подстановочный знак, который будет показывать все?

  • Каков второй столбец ls -l?
  • Отображение последних N измененных файлов?
  • Скрипт, который перечисляет имена файлов с помощью первого типа bash типа
  • Список файлов PDF с отсутствующими метаданными
  • Как перечислить все файлы в каталоге с абсолютными путями
  • Изменение интервала между файлами в ls
  • Как узнать список каталогов в файловой системе?
  • Странная зависание «ls -l» или «dir -l» не работает
  • 2 Solutions collect form web for “Почему команда «ls» * «" ничего не показывает?”

    Когда он находится в двойных кавычках, * не рассматривается как глобус, и поэтому не расширяется. Поэтому вы просите ls указать файл с именем * , который, вероятно, не существует.

    Чтобы увидеть все файлы, вы можете запускать ls без каких-либо аргументов, так как по умолчанию это показать вам все файлы в текущем каталоге. Если вы хотите передать все файлы в качестве аргументов в ls по какой-либо причине, просто удалите кавычки, чтобы вы запускали

     ls * 

    но это действительно похоже на

     ls 

    за исключением того, что если у вас много файлов * могут расширяться, чтобы передать слишком много аргументов в ls , а также ls * покажет содержимое каталогов, а ls сам по себе покажет, что каталоги находятся в текущем каталоге, не спускаясь в них.

     ls *.* /Dir (dir is optional) 

    перечисляет каждый файл (независимо от типа файла) в текущем рабочем каталоге пользователей (найденном pwd) или в / Dir и

     ls * /Dir (dir optional) 

    перечисляет каждый файл и каталог один ниже в текущем рабочем каталоге пользователя или в / Dir. Однако,

     ls "*" & ls *.* 

    не будут перечислены рекурсивно, для этого вам нужно

     ls -R *.* /Dir 

    или

     ls -R "*" /Dir 

    Что касается причин

     ls "*" 

    не работает правильно, вы правы: * является подстановочным знаком, и когда вы вызываете ls так:

     ls "*" 

    вы просите bash найти файл и / или каталог, в котором есть звездочка. Я установил IDE и не смог найти конфигурацию и основные файлы для него, поэтому я использовал эти команды для поиска файлов:

    (найти файлы, соответствующие шаблону, и перенаправить их в определенный файл)

     locate *eclipse* >locate_eclipse.txt locate *tar* > locate_tar.txt locate *.tar* > locate_".tar".txt locate *compiler* > locate_compiler.txt locate *JRE* > locate_JRE.txt locate *jre* > locate_jre.txt 

    (Искал всю файловую систему и печатает только те, которые соответствуют шаблону)

     ls -R / | grep "eclipse" ls -R / | grep "tar" ls -R / | grep ".tar" ls -R / | grep "compiler" ls -R / | grep "JRE" 

    Извините за spiel, но я попытался охватить большинство баз.

    Linux и Unix - лучшая ОС в мире.