нашел ls binary using whereis, но не может найти ll почему?

Вам нужно установить все библиотеки зависимостей для i386 (это может работать и с 64), как описано выше. Для отсутствующей библиотеки libpng12 просто перейдите по адресу: https://packages.debian.org/jessie/i386/libpng12-0/download и установите с помощью

sudo dpkg -i ~/Downloads/libpng12-0_1.2.50-2+deb8u3_i386.deb

у него нет зависимостей, которые не были бы разрешен текущей средой:

dep: libc6 (> = 2.14), zlib1g (> = 1: 1.1.4)

1
задан 5 November 2015 в 20:12

2 ответа

Как отмечено kos в комментариях, вы должны использовать встроенную команду type bash, которая, в отличие от whereis, также знает об алиасах и встроенных оболочках:

$ type ll ls cd
ll is aliased to `ls -alF'
ls is hashed (/bin/ls)
cd is a shell builtin
[d3 ] (Значение «хеширования» см. В , отмеченное kos .)

7
ответ дан 23 May 2018 в 16:03
  • 1
    Будет также работать для функций bash: testfunc() { echo 'Hi!'; }; type testfunc. – Ruslan 6 November 2015 в 13:43

Многие пользователи, такие как короткие сокращения, и это то, что является псевдонимом, является ярлыком для пользователей.

Сценарии не должны использовать ярлыки, которые не являются переносимым дизайном, как вы узнали, эти команды псевдонимов

Самый простой ответ для удовлетворения ваших потребностей, если использовать повторение «ll»:

Внутри скрипта определите псевдоним ll = 'ls -l' , прежде чем ссылаться на команду, тогда использование «ll» будет работать во всем этом скрипте.

#!/bin/bash
alias  ll='ls -alF'
... (rest of the script)

Лучший ответ: лучше использовать полную команду в скрипте, предоставляет документацию. Никогда не используйте псевдоним в скрипте, который другие должны использовать.

6
ответ дан 23 May 2018 в 16:03
  • 1
    Этот интерфейс изменил строку сценария, должен начинаться с символа «hash», за которым следует «восклицание», затем / bin / bash, как в «#! / Bin / bash», если это сценарий bash. Это рекомендуемая первая строка любого скрипта bash. Это указывает системе, какая оболочка используется для интерпретации этого скрипта. – webmaster LinuxCourses 5 November 2015 в 20:37
  • 2
    Вам просто нужно использовать форматирование кода. Выберите фрагмент и нажмите CTRL + K или нажмите кнопку {} . Или вручную отступайте каждую строку кода с 4 пробелами. Это синтаксис Markdown, используемый здесь на StackExchange. См. askubuntu.com/help/formatting , чтобы узнать больше. – Byte Commander 5 November 2015 в 21:43
  • 3
    Muchos gracias, я не знал об этих вариантах форматирования. Я вижу, что вы изменили мой ответ, высоко оценили. – webmaster LinuxCourses 6 November 2015 в 00:43

Другие вопросы по тегам:

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