728x90
반응형

IT/리눅스마스터1급 203

[C언어/C++] tolower, toupper 대문자 소문자 변경

안녕하세요. BlockDMask 입니다. 오늘은 C언어, C++에서 알파벳을 소문자는 대문자로, 대문자는 소문자로 변경해주는 tolower, toupper 함수에 대해서 알아보려고 합니다. 1. toupper, tolower 함수 원형과 사용법 2. tolower, toupper 함수 예제 1. C, C++ toupper, tolower 함수 설명 1-1) 헤더파일 C언어 : C++ : 1-2) tolower 함수 원형 및 설명 int tolower(int c); 매개변수 : 문자를 인자로 받습니다. 문자를 넣게되면 아스키 코드표에 기반한 10진 수로 변환되어 들어가며, 숫자가 들어가게 되어도 아스키 코드 표에 기반한 숫자로 인식합니다. 즉 int 타입인 65번이 들어오면 내부적으로는 'A'로 인식합니다..

^M 정체 및 제거 방법

다른 운영체제 간에 파일을 전송하여 확인할 때 각 행의 끝에 ^M가 보이는 경우가 있다 예를 들어 윈도우에서 리눅스로 파일을 옮긴 경우 ^M가 보이는데 이 때이 ^M을 어떻게든 처리해야한다 우선 생기는 이유는 각 운영체제간의 개행문자 방식이 다르기 때문으로, 파일이 전송될 때 각 OS의 텍스트 처리방법으로 변환이 되지 않으면 개행문자 차이로 인해 깨져보이는 것 리눅스에서 파일이 해당 문제에 있을 때 해결책으로 두 가지가 있다 1. dos2unix 명령어 가장 간편할 수 있다 아래 명령어를 수행하면 리눅스가 인식하는 개행문자로 변경된다 (\r\n) # dos2unix [filename] 2. vi 편집기를 사용하여 수정 vi로 해당 파일 열어서 깨진 개행문자를 직접 지운다 아래는 vi에서 깨진 개행문자를 ..

리눅스 접속시 공지, 배너띄우기

사내 개발서버에서 작업을 하다보면 터미널에 자주 로그인을 하는데 아무것도 안뜨는 화면을 매일 보니 왠지좀 심심하더군요. 다른팀은 컬러까지 입혀서 멋지게 만들어놨던데 우리팀도 좀 정체성을 보여줄만한 문구를 만들어야겠다 싶더라고요 ㅎㅎ 일단은 문구제작은 나중에 하기로하고 예제로 간단하게 해보겠습니다. 리눅스 접속시 문구 로그인 시도할때와 로그인 성공후의 두가지 경우로 문구를 분리할수 있습니다. 원격 접속 시도시 보여줄 문구 원격 접속 성공시 보여줄 문구 원격 접속 시도시 보여주기 로그인 전에 보여줄 문구는 다음과 같이 설정합니다. $ vi /etc/issue.net 로그인전 배너 테스트 issue.net 파일은 원격 접속하기전에 보여줄 문구를 나타냅니다. 파일을 처음 열어보면 내용이 있을수도있는데 기존 내용..

기본적인 AIX 명령어 정리

1. 호스트 네임 $ uname (OS) $ uname -n (hostname) $ uname -u (Serial Number) $ uname -a (OS, Host, Version) $ uname -M (Model) 2. 자세한 시스템 정보 확인 $ lsconf | pg $ prtconf 3. OS 버전 $ oslevel -s 4. CPU Core 수 $ lsdev -Cc processor | wc -l 5. 메모리 $ lsattr -El mem(n) $prtconf | grep Memory 6. 디바이스명 $lspv 7. 내장 Disk 수 $lsdev -Cc disk 8. 내장 Disk 용량 $ bootinfo -s hdisk(n) $ lspv hdisk(n) 9. RAID 구성방식 lsvg -l r..

$PATH에서 경로 지우기 / 중복 경로 지우기

PATH=$(REMOVE_PART="/지우고/싶은/경로" sh -c 'echo ":$PATH:" | sed "s@:$REMOVE_PART:@:@g;s@^:\(.*\):\$@\1@"') 만약 지우고 싶은 path가 "/usr/bin/python3"이라고 하자. PATH=$(REMOVE_PART="/usr/bin/python3" sh -c 'echo ":$PATH:" | sed "s@:$REMOVE_PART:@:@g;s@^:\(.*\):\$@\1@"') 중복 경로 지우기 PATH="$(perl -e 'print join(":", grep { not $seen{$_}++ } split(/:/, $ENV{PATH}))')" 출처 : $PATH에서 경로 지우기 / 중복 경로 지우기 (tistory.com)

리눅스 환경변수(path) 설정

환경변수란 자바 등을 깔아본 사람들이라면 이미 익숙할 것이다. 어떤 프로그램이 돌아가게 해주는 실행파일의 경로를 잡아주는걸 환경변수 세팅이라고 하는데, 리눅스에는 매우 다양한 환경변수들이 있다. 현재 지정된 환경변수를 출력하는 명령어는 printenv 이다. 환경변수들의 경로인 path를 출력하는 명령어는 echo $PATH 이다. path들은 전부 : (콜론)으로 구별되어 있다. 여기서 하나 알아두어야 할 점은, 우리가 리눅스에서 사용하는 명령어들도 결국 일종의 실행파일인데 명령어 입력 시 환경변수에 잡혀있는 PATH를 따라가서 해당 파일이 실행되는 원리로 명령어가 작동된다는 것이다. 즉, mkdir, ls 등의 명령어도 결국 저 path 경로에 저장되어 있다는 얘기이다. 이 점을 응용해보자. 명령어들..

ps에서 pid 목록만 가져와서 kill하기 [GAWK]

1. 원하는 프로세스 목록만 가져오기 - ps, grep 2. 프로세스 목록에서 pid만 가져오기 - AWK (GAWK) 3. kill 명령어로 한번에 프로세스 종료하기 4. Shell script를 이용하여 한번에 종료하기 작업할게 많아서 R이라는 프로그램을 거의 40개 가량 돌려야 할 때가 있었습니다. 근데 하나 실수한게 있어서 이 40개나 되는 프로세스를 다 죽여야하게 됐는데, nohup 백그라운드로 실행시키는 바람에 kill이라는 명령어로 하나 하나 다 따로 죽여야 하는 상황이 됐네요. Fig.1 ps -elf | grep sosal | grep exec (스압 --;) 1. 원하는 프로세스 목록만 가져오기 - ps, grep 40개를 하나하나 프로세스 아이디(pid)를 다 치기에는 너무 귀찮으니..

일반 계정에 root 권한 부여

일반 계정에 root권한 부여 유저생성 [root@localhost ~]# useradd test [root@localhost ~]# passwd test 새 암호: 새 암호 재입력: 권한부여 [root@localhost ~]# vi /etc/passwd ... saslauth:x:498:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin postfix:x:89:89::/var/spool/postfix:/sbin/nologin gdm:x:42:42::/var/lib/gdm:/sbin/nologin pulse:x:497:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin sshd:x:74:74:Privilege-s..

[Linux] 일반 user에게 root 권한 부여하기

사실 user에게 root권한을 줄 필요는 없었지만, 작성한 것이 아까워 블로그에 정리하기로 마음먹었다. 아래의 명령어를 통해 생성한 유저에게 superuser의 권한을 줄 수 있다. sudo vi /etc/sudoers // super user 리스트에 들어가기 [username] ALL=(ALL) NOPASSWD: ALL을 입력하여 super user로 등록해준다. (추후 이 user를 통해 루트 디렉토리에 접근하여 backup 디렉토리를 생성할 예정이기 때문) 원격 접속은 성공했으나, 권한 설정이 제대로 되어있지 않은 탓인지, 최상위 디렉토리에서 새로 디렉토리를 만드는 것이 거부된다. root 권한을 다시 부여하기 root Group으로 포함시키는 작업을 하지 않아 root의 권한을 일반 user(..

tar 압축 중 메세지 "tar: Removing leading `/' from member names" 뜻

에러 : tar: Removing leading `/' from member names test 라는 폴더를 test.tar로 묶을 때 1 $ tar -cvf /oracle/test.tar /oracle/test/ 이 명령어로 묶게 되면 아래처럼 알리는 글이 먼저 뜨고 나서 test.tar 파일이 만들어진다. tar: Removing leading `/' from member names 이 메세지는 에러 메세지는 아니고 알림 메세지임 이 메세지는 압축할 파일(들)의 경로에서 tar은 '/'을 제거했다는 뜻임 기본값에서 tar은 상대 경로를 쓰므로 절대 경로를 뜻하는 '/'를 앞에 붙이면 이처럼 알림글을 내보내고 알아서 빼버림 #tar 옵션에 P(큰 로마자)를 붙여 주면 tar에 절대 경로를 넣더라도 앞에..

728x90
반응형