Linux에 포함되어야 하는 프로그램 목록 cat
에 대한 표준이 있습니까 (예: , )?ls
답변1
Linux 표준 라이브러리(LSB)에는신청 체크리스트:
[ du install mv strings
ar echo install_initd newgrp strip
at ed ipcrm nice stty
awk egrep ipcs nl su
basename env join nohup sync
batch expand kill od tail
bc expr killall passwd tar
cat false ln paste tee
chfn fgrep locale patch test
chgrp file localedef pathchk tic
chmod find logger pax time
chown fold logname pidof touch
chsh fuser lp pr tput
cksum gencat lpr printf tr
cmp getconf ls ps true
col gettext lsb_release pwd tsort
comm grep m4 remove_initd tty
cp groupadd mailx renice umount
cpio groupdel make rm uname
crontab groupmod man rmdir unexpand
csplit groups md5sum sed uniq
cut gunzip mkdir sendmail useradd
date gzip mkfifo seq userdel
dd head mknod sh usermod
df hostname mktemp shutdown wc
diff iconv more sleep xargs
dirname id mount sort zcat
dmesg infocmp msgfmt split
이들 중 다수가 포함되어 있습니다.POSIX 1003.1-2001 표준, 그러나 다음은 LSB에만 있거나다른 사양POSIX에서:
ar echo hostname more sh
at egrep install mount shutdown
awk fgrep install_initd msgfmt su
batch file ipcrm newgrp sync
bc fuser ipcs od tar
chfn gettext killall passwd umount
chsh grep lpr patch useradd
col groupadd ls pidof userdel
cpio groupdel lsb_release remove_initd usermod
crontab groupmod m4 renice xargs
df groups md5sum sed zcat
dmesg gunzip mknod sendmail
du gzip mktemp seq
답변2
기술적으로는 가정할 수 없습니다.아무것Linux 커널은 전체 셸 유틸리티가 무의미한 공간 낭비가 되는 여러 임베디드 또는 반임베디드 환경에서 사용되기 때문에 이러한 일이 발생합니다. 예를 들어, 부트로더, 모놀리식 커널, /sbin/init
장치에서 수행해야 하는 모든 작업을 수행하기 위한 사용자 정의, 몇 가지 /dev
항목 및다른 사람은 없어.
이것POSIX.1-2008 "쉘 및 유틸리티" 사양, 또한 muru의 답변에 링크되어 있으며 쉘을 표준화하는 것을 목표로 합니다.프로그래밍 언어로. 따라서 "전통적인" Unix 설치에서 기대할 수 있는 대부분의 시스템 관리 도구가 포함되어 있지 않습니다. 불행하게도 이는 System V와 BSD 사이의 고대 분열의 명백한 상처이기도 합니다. Linux에서 찾을 수 있는 도구는 FreeBSD나 OSX 등의 도구와 동일하지 않습니다. 다시 말하지만, 신뢰할 수 있는 기준선은 없습니다.
maru의 답변에 누락된 내용을 보여주기 위해 다음과 같은 세트가 있습니다.가방Debian에서는 "필수"로 간주됩니다(불안정)(공식적인 정의: "필수 패키지만 있는 시스템은 사용할 수 없지만 시스템 관리자가 더 많은 소프트웨어를 시작하고 설치할 수 있는 충분한 기능을 갖추고 있습니다.") 파일을 , /bin
또는 에 제공합니다 . 별표가 표시된 것은 "필수"일 뿐만 아니라 "필수"입니다. 즉, 다른 패키징 소프트웨어가 이에 의존하지 않고 그 존재를 가정할 수 있음을 의미합니다./sbin
/usr/bin
/usr/sbin
base-passwd* gzip* perl-base*
bash* hostname* sed*
bsdutils* initscripts sensible-utils
coreutils* libc-bin* sysv-rc
dash* libpam-modules-bin sysvinit-utils*
debianutils* libpam-runtime tar*
diffutils* login* tzdata
dpkg* mawk¹ util-linux*
e2fsprogs* mount* xz-utils
findutils* ncurses-bin*
grep* passwd
¹ awk 언어는 "필수"이지만 시스템 관리자는 "mawk" 또는 "gawk" 구현이 필요한지 여부를 선택할 수 있습니다.
이것은 "중요"하다고 간주되는 패키지입니다. "중요"의 공식적인 정의는 "대체 무슨 일이 일어났나요? 숙련된 Unix 사용자가 누락된 것을 발견했을 때 foo는 어디에 있습니까?"입니다.
adduser cpio ifupdown man-db vim-common
apt cron iproute2 procps vim-tiny
apt-utils debconf iputils-ping rsyslog wget
aptitude dmidecode isc-dhcp-client systemd whiptail
aptitude-common gnupg kmod systemd-sysv
at gpgv less traceroute
bsdmainutils groff-base logrotate udev
ps
두 번째 그룹에는 Windows 및 Mac 과 같은 중요한 시스템 관리 도구 뿐만 아니라 Windows 및 Mac iproute2
과 같은 일부 설치에 전혀 필요하지 않을 수도 있는 도구도 포함되어 있습니다 . 두 컬렉션 모두 .at
dmidecode
dpkg
apt
또한 두 그룹이 함께 있다는 점에 유의하세요.아니요LSB(또는 POSIX+XSI)에 필요한 기능의 상위 집합: 다음 유틸리티가 누락되었습니다.
ar gencat lpr msgfmt strings
bc gettext lsb_release patch strip
ed install_initd m4 pax time
file killall mailx remove_initd
fuser lp make sendmail
위 패키지에는 있지만 LSB에는 없는 유틸리티 목록은 길고 지루하지만, 여기에 포함된 "핵심 시스템 관리 도구"의 수를 강조하기 위해 포함시켰습니다.
accessdb mkhomedir_helper
add-shell mklost+found
addgroup mkswap
addpart modinfo
adduser modprobe
agetty mountpoint
apropos mt-gnu
apt namei
apt-cache ncal
apt-cdrom ncurses5-config
apt-config ncursesw5-config
apt-extracttemplates neqn
apt-ftparchive networkctl
apt-get newusers
apt-key nisdomainname
apt-mark nologin
apt-sortpkgs nproc
aptitude-create-state-bundle nroff
aptitude-curses nsenter
aptitude-run-state-bundle nstat
arch numfmt
arpd oldfind
badblocks ownership
base64 pam-auth-update
bash pam_getenv
bashbug pam_tally
biosdecode pam_tally2
blkdiscard pam_timestamp_check
blkid partx
blockdev perl
bootctl perl5.20.2
bridge pg
bsd-from pgrep
bsd-write pic
busctl ping
cal ping6
calendar pinky
captoinfo pivot_root
catchsegv pkill
catman pldd
cfdisk pmap
chage poweroff
chattr preconv
chcon printenv
chcpu printerbanner
chgpasswd prlimit
chpasswd ptx
chroot pwck
chrt pwconv
clear pwdx
clear_console pwunconv
colcrt raw
colrm rbash
column readlink
cpgr readprofile
cppw realpath
cron reboot
ctrlaltdel remove-shell
ctstat rename.ul
dash reset
debconf resize2fs
debconf-apt-progress resizepart
debconf-communicate rev
debconf-copydb rgrep
debconf-escape rmmod
debconf-set-selections rmt-tar
debconf-show routef
debugfs routel
delgroup rsyslogd
delpart rtacct
deluser rtcwake
depmod rtmon
dhclient rtstat
dhclient-script run-parts
diff3 runcon
dir runlevel
dircolors runuser
dmidecode savelog
dnsdomainname script
domainname scriptreplay
dpkg sdiff
dpkg-deb select-editor
dpkg-divert sensible-browser
dpkg-maintscript-helper sensible-editor
dpkg-preconfigure sensible-pager
dpkg-query service
dpkg-reconfigure setarch
dpkg-split setsid
dpkg-statoverride setterm
dpkg-trigger sfdisk
dumpe2fs sg
e2freefrag sha1sum
e2fsck sha224sum
e2image sha256sum
e2label sha384sum
e2undo sha512sum
e4defrag shadowconfig
eqn shred
expiry shuf
factor skill
faillog slabtop
fallocate snice
fdformat soelim
fdisk ss
filefrag start-stop-daemon
findfs stat
findmnt stdbuf
flock sulogin
fmt sum
free swaplabel
fsck swapoff
fsck.cramfs swapon
fsck.ext2 switch_root
fsck.ext3 sysctl
fsck.ext4 systemctl
fsck.ext4dev systemd
fsck.minix systemd-analyze
fsck.nfs systemd-ask-password
fsfreeze systemd-cat
fstab-decode systemd-cgls
fstrim systemd-cgtop
geqn systemd-delta
getent systemd-detect-virt
getopt systemd-escape
getty systemd-hwdb
gpasswd systemd-inhibit
gpg systemd-machine-id-setup
gpg-zip systemd-notify
gpgsplit systemd-path
gpgv systemd-run
gpic systemd-stdio-bridge
groff systemd-tmpfiles
grog systemd-tty-ask-password-agent
grops tabs
grotty tac
grpck tailf
grpconv tarcat
grpunconv taskset
gtbl tbl
gzexe tc
halt tcptraceroute.db
hd telinit
helpztags tempfile
hexdump timedatectl
hostid timeout
hostnamectl tload
hwclock toe
i386 top
iconvconfig traceproto.db
ifdown traceroute-nanog
ifquery traceroute.db
ifup traceroute6.db
infotocap troff
init truncate
insmod tset
installkernel tune2fs
invoke-rc.d tunelp
ionice tzconfig
ip tzselect
ipcmk udevadm
ischroot ul
isosize uncompress
journalctl unix_chkpwd
killall5 unix_update
kmod unlink
last unshare
lastb unxz
lastlog update-alternatives
ldattach update-passwd
ldconfig update-rc.d
ldconfig.real uptime
ldd users
less utmpdump
lessecho vdir
lessfile vigr
lesskey vim.tiny
lesspipe vipw
lexgrog vmstat
lft.db vpddecode
line w.procps
link wall
linux32 watch
linux64 wdctl
lnstat wget
localectl whatis
login whereis
loginctl which
logrotate whiptail
logsave who
look whoami
lorder wipefs
losetup x86_64
lsattr xxd
lsblk xz
lscpu xzcat
lsipc xzcmp
lslocks xzdiff
lslogins xzegrep
lsmod xzfgrep
lspgpot xzgrep
lzmainfo xzless
mandb xzmore
manpath yes
mawk ypdomainname
mcookie zcmp
md5sum.textutils zdiff
mesg zdump
mke2fs zegrep
mkfs zfgrep
mkfs.bfs zforce
mkfs.cramfs zgrep
mkfs.ext2 zic
mkfs.ext3 zless
mkfs.ext4 zmore
mkfs.ext4dev znew
mkfs.minix zramctl
답변3
이것Wikipedia: Unix 명령 목록그리고Linux 구성: Linux 명령확실히 볼만한 가치가 있습니다.
그러나 많은 사람들은 표시된 디렉토리에 포함된 내용을 찾아본 echo $PATH
다음 매뉴얼 페이지에서 자세한 내용을 확인하는 것을 선호합니다.