Пара известных инструментов командной строки существует в нескольких версиях в зависимости от разновидности Unix (как sed, найдите, ld).
Я задавался вопросом, какие версии доступны в Ubuntu (я принимаю GNU для всех кроме, я хотел бы подтвердить это)?
Существует несколько способов интерпретировать Ваш вопрос, таким образом, я буду явным в своих ответах.
, Конечно, не, можно установить то, что Вы любите и существует много вещей, которые являются частью Ubuntu или Debian непосредственно, которые не являются восходящими.
coreutils
составляет обширное, обматывают их (и это - проект GNU —, это - то, что GNU в GNU/Linux представляет), но чтобы быть совместимым POSIX, системе нужны больше, чем всего coreutils
.
На всякий случай Вы задаетесь вопросом, что coreutils
покрытия, вот его описание пакета:
This package contains the basic file, shell and text manipulation
utilities which are expected to exist on every operating system.
Specifically, this package includes: arch base64 basename cat chcon chgrp
chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors
dirname du echo env expand expr factor false flock fmt fold groups head
hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mktemp
mv nice nl nohup nproc od paste pathchk pinky pr printenv printf ptx pwd
readlink rm rmdir runcon sha*sum seq shred sleep sort split stat stty sum
sync tac tail tee test timeout touch tr true truncate tsort tty uname
unexpand uniq unlink users vdir wc who whoami yes
номер, в то время как Ubuntu действительно использует GNU, он полагается на большое количество проектов не-GNU для его соответствия POSIX.
я покрыл , какие команды являются POSIX прежде так с тем списком, мы можем быстро генерировать список пакетов и затем захватить все URL Домашней страницы проекта от тех пакетов. Даже не посещая URL Вы видите, что они не GNU (некоторые - даже открыто негну).
$ apt-cache show $(for c in "admin alias ar asa at awk basename batch bc bg break c99 cal cat cd cflow chgrp chmod chown cksum cmp colon comm command compress continue cp crontab csplit ctags cut cxref date dd delta df diff dirname dot du echo ed env eval ex exec exit expand export expr false fc fg file find fold fort77 fuser gencat get getconf getopts grep hash head iconv id ipcrm ipcs jobs join kill lex link ln locale localedef logger logname lp ls m4 mailx make man mesg mkdir mkfifo more mv newgrp nice nl nm nohup od paste patch pathchk pax pr printf prs ps pwd qalter qdel qhold qmove qmsg qrerun qrls qselect qsig qstat qsub read readonly renice return rm rmdel rmdir sact sccs sed set sh shift sleep sort split strings strip stty tabs tail talk tee test time times touch tput tr trap true tsort tty type ulimit umask unalias uname uncompress unexpand unget uniq unlink unset uucp uudecode uuencode uustat uux val vi wait wc what who write xargs yacc zcat"; do dpkg -S $(readlink -f $(which $c)); done | awk -F: '{print $1}' | sort -u) | awk '/Package|Homepage/'
Package: at
Package: bc
Homepage: http://ftp.gnu.org/gnu/bc/
Package: binutils
Package: bison
Homepage: http://www.gnu.org/software/bison/
Package: bsdmainutils
Package: bsdutils
Homepage: http://userweb.kernel.org/~kzak/util-linux/
Package: coreutils
Homepage: http://gnu.org/software/coreutils
Package: cron
Homepage: http://ftp.isc.org/isc/cron/
Package: cups-client
Homepage: http://www.cups.org
Package: dash
Homepage: http://gondor.apana.org.au/~herbert/dash/
Package: diffutils
Homepage: http://www.gnu.org/software/diffutils/
Package: ed
Homepage: http://www.gnu.org/software/ed/
Package: file
Homepage: http://www.darwinsys.com/file/
Package: findutils
Homepage: http://savannah.gnu.org/projects/findutils/
Package: flex
Homepage: http://flex.sf.net/
Package: gawk
Homepage: http://www.gnu.org/software/gawk/
Package: gcc
Package: graphviz
Homepage: http://www.graphviz.org/
Package: grep
Homepage: http://www.gnu.org/software/grep/
Package: gzip
Package: heirloom-mailx
Homepage: http://heirloom.sourceforge.net/mailx.html
Package: libc-bin
Homepage: http://www.eglibc.org
Package: libc-dev-bin
Homepage: http://www.eglibc.org
Package: login
Homepage: http://pkg-shadow.alioth.debian.org/
Package: m4
Homepage: http://www.gnu.org/software/m4/
Package: make
Homepage: http://www.gnu.org/software/make/
Package: man-db
Homepage: http://man-db.nongnu.org/
Package: ncurses-bin
Homepage: http://invisible-island.net/ncurses/
Package: patch
Package: pax
Package: procps
Homepage: http://gitorious.org/procps
Package: psmisc
Homepage: http://psmisc.sf.net/
Package: sed
Homepage: http://www.gnu.org/software/sed/
Package: sharutils
Homepage: http://www.gnu.org/software/sharutils/
Package: sysvinit-utils
Homepage: http://savannah.nongnu.org/projects/sysvinit
Package: time
Homepage: http://www.gnu.org/software/time
Package: util-linux
Homepage: http://userweb.kernel.org/~kzak/util-linux/
Package: vim-tiny
Homepage: http://www.vim.org/
Вы видите Пространство пользователя "GNU" из Википедии-.
Так, команды GNU доступны для Ubuntu. Для наблюдения доступных команд см. Список Пакетов GNU.
И для конкретной команды (Исключая: найдите): findutils из Проекта GNU
Почти все команды Unix существуют с различными версиями в зависимости от используемой ОС.
существуют существенные различия, обычно расширения GNU стандарта POSIX.
На Ubuntu, можно ожидать, что версия GNU будет стандартом для большинства этих команд, но не обязательно всех.
самый очевидный пример /bin/sh
, который является ссылкой на dash
на Ubuntu, и не больше bash
как он раньше был.
, В то время как bash
часть проекта GNU, dash
, прибывает из первоначально от netBSD один.
На основе моего опыта реализации GNU инструментов Unix обычно более богаты доступными параметрами. Однако, вероятно, существуют исключения. Иногда существуют также различия в поведении по умолчанию. Например, GNU "находят" выполненными без каталога implicitely, принимает выполнение в текущем каталоге. На SunOS это неправильно, и необходимо ввести, "находят". получить тот же результат.