사용중인 Shell $> echo $SHELL /usr/bin/zsh Shell 종류 $> /usr/bin/sh # Bourne shell. /usr/bin/ksh93 # Korn shell. /usr/bin/bash # Bash shell. /usr/bin/zsh # Z shell. /usr/bin/csh # C Shell. /usr/bin/tcsh # TC Shell. /usr/bin/fish # Fish Shell. ... Shell 변경 Shell을 변경하는 것은 Shell을 실행 해 주는 것으로 사용 가능합니다. (물론 $PATH에 등록되어 있고 해당 Shell이 설치되어 있는 경우)
$> bash $> zsh 기본 Shell을 변경하고 싶을 경우에는 chsh 명령어를 사용하면 됩니다.
linux의 crontab 명령어(CLI)는 현재 사용자에 대해 특정 시간 간격으로 실행되도록 하는 프로그램입니다.
기본 사용법 $> crontab -e # 매분 마다 실행되는 작업(jobs)를 등록 합니다. * * * * * echo "Hi Crontab." # 작업을 등록하고 저장하면 아래와 같은 메시지를 볼 수 있습니다. no crontab for geeksaga - using an empty one crontab: installing new crontab # 현재 설정된 작업 목록을 보여 줍니다. $> crontab -l * * * * * echo "Hi Crontab" # 현재 사용자에 대한 작업을 모두 삭제 합니다.
linux의 curl 명령어(CLI)는 URLs을 통해 데이터를 전송하는 명령어입니다.
기본 사용법 $> curl https://geeksaga.com <!DOCTYPE html> <html lang="en-us"> ... </html> SSL 연결을 위한 -k, --insecure 옵션과 -b, --cookie 쿠키값 지정을 통해 원하는 호출을 할 수 있습니다.
$> curl -k --cookie "ARRAffinity=41ee36d2553ab86f8591533e8d88ac03605e73912cbf43c398f1a5ac371d0989" https://www.geeksaga.com/ curl http 활용 # 프로토콜을 지정하지 않은 경우 기본값은 HTTP로 설정됩니다. $> curl www.geeksaga.com ... # HTTP 요청하는 방법을 지정하려면 -X 옵션을 시용할 수 있습니다. # 기본값은 GET 방식이며 이 방법은 요청할때 별도의 data(Body)가 필요 없습니다.
linux의 stow 명령어는 symbolic links를 관리해 주는 명령어이다.
dotfiles을 관리에 자주 사용되고, 소프트웨어 패키지 설치 관리자 역할을 하기도 한다.
stow를 이용하면 ‘/usr/local/stow/’ 하위에 사용자가 컴파일 해서 사용하는 프로그램들을 만들어서 사용할 수 있게 된다.
요즘은 패키지 관리자들이 너무 잘 되어 있어서 굳이 패키지 관리 용도로 사용하는 모습은 잘 보이지 않는다.
기본 동작은 stow dir에서 지정된 이름의 디렉터리에 있는 파일을 현재 디렉터리 바로 위의 디렉터리에 링크한다.
stow를 사용할 때 주의 점은 디렉터리 구조가 목적에 맞게 미리 구성되어 있어야 한다.
linux의 pmap 명령어를 통해 프로세스의 메모리 맵을 볼 수 있습니다.
기본 사용법 $> pmap -x 3273049 3273049: /opt/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-8.5.24/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -XX:+UseZGC -XX:ConcGCThreads=4 -XX:NativeMemoryTracking=detail Address Kbytes RSS Dirty Mode Mapping 0000000800000000 11932 11868 3728 rw--- classes_nocoops.jsa 0000000800ba7000 356 0 0 ----- [ anon ] 0000000800c00000 128 128 128 rw--- [ anon ] 0000000800c20000 128 128 128 rw--- [ anon ] ... 응용 프로세스 이름을 통해서 메모리 맵 확인하려면 grep 명령어와 awk 명령어를 사용합니다.
linux의 dd 명령어를 통해 파일을 변환하거나 복사 할 수 있습니다.
기본 사용법 $> dd [OPERAND]... 응용 부팅 가능한 USB 만들기 $> sudo dd bs=4M if=archlinux-2020.09.01-x86_64.iso of=/dev/sdb status=progress oflag=sync 708837376 bytes (709 MB, 676 MiB) copied, 101.529 s, 7.0 MB/s 169+1 records in 169+1 records out 711983104 bytes (712 MB, 679 MiB) copied, 101.957 s, 7.0 MB/s TLDR $> tldr dd dd Convert and copy a file. - Make a bootable usb drive from an isohybrid file (such like archlinux-xxx.
linux의 dmidecode 명령어를 통해 DMI(SMBIOS) 정보를 출력해 줍니다.
기본 사용법 dmidecode 명령을 사용하려면 root 권한이 있어야 합니다.
$> sudo dmidecode | more # dmidecode 3.0 Getting SMBIOS data from sysfs. SMBIOS 2.7 present. 76 structures occupying 3048 bytes. Table at 0x000EB530. ... 응용 $> sudo dmidecode -t 0 # dmidecode 3.0 Getting SMBIOS data from sysfs. SMBIOS 2.7 present. Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: American Megatrends Inc.