Fórum Root.cz
Hlavní témata => Server => Téma založeno: Drda 21. 11. 2017, 17:50:24
-
Ahoj, je možný, že existuje v bash nějaký příkaz/funkce, který by začínal podtržítkem? Díky
-
Ahoj, je možný, že existuje v bash nějaký příkaz/funkce, který by začínal podtržítkem? Díky
Minimálně s instalací balíku bash-completion:
_allowed_groups _get_pword _init_completion _rl_enabled
_allowed_users _gids _insserv _root_command
_available_interfaces __git_eread _installed_modules _service
_cd __git_ps1 _ip_addresses _services
_cd_devices __git_ps1_colorize_gitstring _kernels _shells
_command __git_ps1_show_upstream _kernel_versions _signals
_command_offset __grubcomp _known_hosts _split_longopt
_complete_as_root __grub_dir _known_hosts_real _subdirectories
_completion_loader _grub_editenv _longopt _sysvdirs
_configured_interfaces __grub_get_last_option __ltrim_colon_completions _terms
_count_args __grub_get_options_from_help _mac_addresses _tilde
_debconf_show __grub_get_options_from_usage _minimal _uids
_deborphan _grub_install _modules _update_initramfs
_dkms __grub_list_menuentries _mtx _upvar
_dvd_devices __grub_list_modules _ncpus _upvars
_expand _grub_mkconfig _parse_help _usb_ids
__expand_tilde_by_ref _grub_mkfont __parse_options _user_at_host
_filedir _grub_mkimage _parse_usage _usergroup
_filedir_xspec _grub_mkpasswd_pbkdf2 _pci_ids _userland
_filename_parts _grub_mkrescue _pgids _variables
_fstypes _grub_probe _pids _xfunc
_get_comp_words_by_ref _grub_script_check _pnames _xinetd_services
_get_cword _grub_set_entry _quote_readline_by_ref
__get_cword_at_cursor_by_ref _grub_setup _realcommand
_get_first_arg _have __reassemble_comp_words_by_ref
-
Díky moc! Poradíš i jak vypsat názvy systémových proměnných?
-
Díky moc! Poradíš i jak vypsat názvy systémových proměnných?
set
-
Ahoj, je možný, že existuje v bash nějaký příkaz/funkce, který by začínal podtržítkem? Díky
Minimálně s instalací balíku bash-completion:
_allowed_groups _get_pword _init_completion _rl_enabled
_allowed_users _gids _insserv _root_command
_available_interfaces __git_eread _installed_modules _service
_cd __git_ps1 _ip_addresses _services
_cd_devices __git_ps1_colorize_gitstring _kernels _shells
_command __git_ps1_show_upstream _kernel_versions _signals
_command_offset __grubcomp _known_hosts _split_longopt
_complete_as_root __grub_dir _known_hosts_real _subdirectories
_completion_loader _grub_editenv _longopt _sysvdirs
_configured_interfaces __grub_get_last_option __ltrim_colon_completions _terms
_count_args __grub_get_options_from_help _mac_addresses _tilde
_debconf_show __grub_get_options_from_usage _minimal _uids
_deborphan _grub_install _modules _update_initramfs
_dkms __grub_list_menuentries _mtx _upvar
_dvd_devices __grub_list_modules _ncpus _upvars
_expand _grub_mkconfig _parse_help _usb_ids
__expand_tilde_by_ref _grub_mkfont __parse_options _user_at_host
_filedir _grub_mkimage _parse_usage _usergroup
_filedir_xspec _grub_mkpasswd_pbkdf2 _pci_ids _userland
_filename_parts _grub_mkrescue _pgids _variables
_fstypes _grub_probe _pids _xfunc
_get_comp_words_by_ref _grub_script_check _pnames _xinetd_services
_get_cword _grub_set_entry _quote_readline_by_ref
__get_cword_at_cursor_by_ref _grub_setup _realcommand
_get_first_arg _have __reassemble_comp_words_by_ref
Nepřijde ti, že je toho nějak moc? :) Co by měl dělat třeba příkaz _cd? ;)
-
Nepřijde ti, že je toho nějak moc? :) Co by měl dělat třeba příkaz _cd? ;)
Vím já? Definice je (Debian Jessie):
_cd ()
{
local cur prev words cword;
_init_completion || return;
local IFS='
' i j k;
compopt -o filenames;
if [[ -z "${CDPATH:-}" || "$cur" == ?(.)?(.)/* ]]; then
_filedir -d;
return 0;
fi;
local -r mark_dirs=$(_rl_enabled mark-directories && echo y);
local -r mark_symdirs=$(_rl_enabled mark-symlinked-directories && echo y);
for i in ${CDPATH//:/'
'};
do
k="${#COMPREPLY[@]}";
for j in $( compgen -d $i/$cur );
do
if [[ ( -n $mark_symdirs && -h $j || -n $mark_dirs && ! -h $j ) && ! -d ${j#$i/} ]]; then
j+="/";
fi;
COMPREPLY[k++]=${j#$i/};
done;
done;
_filedir -d;
if [[ ${#COMPREPLY[@]} -eq 1 ]]; then
i=${COMPREPLY[0]};
if [[ "$i" == "$cur" && $i != "*/" ]]; then
COMPREPLY[0]="${i}/";
fi;
fi;
return 0
}
-
Předpokládám že podtržítkem začínají hlavně funkce a aliasy? Zkusil jsem prohledat svoji distribuci a žádnou binárku ani vestavěný příkaz který by začínal podtržítkem jsem nenašel.
Samozřejmě to neznamená že takový příkaz není.
-
Předpokládám že podtržítkem začínají hlavně funkce a aliasy? Zkusil jsem prohledat svoji distribuci a žádnou binárku ani vestavěný příkaz který by začínal podtržítkem jsem nenašel.
Samozřejmě to neznamená že takový příkaz není.
Já se domnívám, že to je z bash-completion, ale jsem líný to hledat. Dotaz zněl, jestli je to možné - a ano, je to možné, dokonce jsem to našel ve své běžící, poměrně standardní instalaci Debiana.
V čistém bashi asi takový příkaz není, v systému standardně taky ne.
-
set
Spíš
env
:)
-
set
Spíš
env
:)
env nevypíše funkce, ale jen proměnné.
-
env nevypíše funkce, ale jen proměnné.
pripomenu k tomu otazku ;-)
Díky moc! Poradíš i jak vypsat názvy systémových proměnných?
-
Ježiš, pánové, neměřte si tu pindíky. Já souhlasím s tím, že env vypíše jen proměnné, set vypíše zbytečně moc kravin. Tazatel už si z toho snad vybere - a pokud ne, tak my ho stejně nezachráníme :).
-
set
Spíš
env
:)
export
-
set vypíše zbytečně moc kravin
set je hlavně interní příkaz shellu a vypisuje interní struktury shellu. /usr/bin/env je externí program, který vypíše, co se skutečně exportuje, protože do shellu nevidí.
export
# export
export: Command not found.
:)
-
že by zsh? Vlákno začalo dotazem na bash, export je bash command.
Pokud chcete tohle úplně nezávislé na implementaci shellu, na linuxu funguje
cat /proc/self/environ
-
že by zsh? Vlákno začalo dotazem na bash, export je bash command.
Pokud chcete tohle úplně nezávislé na implementaci shellu, na linuxu funguje
cat /proc/self/environ
env je také úplně nezávislý na shellu (/usr/bin/env); moje původní rada "set" naopak na shellu byla závislá, ale bavíme se od začátku o bashi
-
env je také úplně nezávislý na shellu (/usr/bin/env); moje původní rada "set" naopak na shellu byla závislá, ale bavíme se od začátku o bashi
Ta druhá otázka byla na "systémové proměnné", takže to moc o shellu není, natož bashi. Taky je otázka, co si pod tím pojmem OP představuje - jestli nemá zkreslené představy o tom, jak env proměnné fungují...