Я заметил, что когда я пытаюсь эхо?, Он печатает 1.В Bash, почему бы «эхо»? распечатать 1?
Я прочитал, что это «дикая карта (одиночный символ). [Вопросительный знак] Символ« Символ »служит односимвольной« дикой картой » «для расширения имени файла в globbing, а также для представления одного символа в расширенном регулярном выражении». (как написано в документах под названием «Advanced Bash-Scripting Guide: полное руководство по сценариям оболочки, используя Bash», которые я читал в Интернете).
$ echo ?
1
$ echo ? ? ?
1 1 1
$ echo ? 1 ?
1 1 1
$ ls shai?n
shai.txt
bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
Это работает для меня (я получаю знак вопроса, а не номер 1), я использую 'GNU bash, версия 4.2.25 (1) -release (x86_64-pc-linux-gnu) ' –
Думал, что я ответил на аналогичную проблему раньше (пропустил поиск по названию), см. http://stackoverflow.com/questions/20631316/ bash-shell-for-loop-returns-different-values / 20631682 # 20631682 – BroSlow
Попробуйте 'ls -l?'! –