728x90

이 글은 뉴렉쳐 오라클 데이터베이스 SQL 강의 수강하며 정리한 글입니다.

 

03강 - SQL Develper 설치

 

2023 ver.
1. oracle site 회원가입
2. Developers - Developer Resource Center
3. DownLoad - Developer Tools
4. SQL Developer DownLoad
5. Windows 32-bit/64-bit DownLoad (without JDK)
6. 압출 풀기 후, sqldeveloper 폴더 내 sqldeveloper.exe 실행
7. jdk 경로 선택
→ C:\Program Files\Java\jdk-11.0.17
8. 이전 SQL Developer 설치에서 환경설정을 임포트하시겠습니까? “아니오” 선택

 

 

Oracle practice server 구축

 

 

소스 코드

🔗 HJ0216/TIL/OracleSQL

 
728x90
728x90

이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음 수강하며 정리한 글입니다.

 

15강 자주하는 실수 3가지

(일반 사용자 id: j, pw: j)

(관리자 id: root, pw: r)

 

1. Command Not Found

[j@hj0216 ~/dd]$ kbs
-bash: kbs: command not found
[j@hj0216 ~/dd]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/j/.local/bin:/home/j/bin

잘못된 명령어 입력 시 발생

$PATH: command 찾는 경로

/usr/local/bin

/usr/bin

/usr/local/sbin

/usr/sbin

/home/j/.local/bin

/home/j/bin

 

2. 허가 거부

[j@hj0216 ~/dd]$ mkdir /var/d23
mkdir: `/var/d23' 디렉토리를 만들 수 없습니다: 허가 거부

실행하려는 권한이 일반 사용자에게는 없는 경우

특히나 일반 사용자의 경우에는 /home/일반사용자 dir, /tmp dir에 대해서만 write 권한이 존재

[j@hj0216 ~/dd]$ ll /
합계 20
drwxrwxrwt.  11 root root 4096  1월 25 00:26 tmp
# 3자에 대해서도 write 권한 존재

[j@hj0216 ~/dd]$ ll /home
합계 0
drwx------. 4 j j 115  1월 24 23:23 j
# 소유자:j 소유자는 write 권한 존재

 

3. 그런 파일이나 디렉터리가 없습니다

[j@hj0216 ~/dd]$ cd /aa
-bash: cd: /aa: 그런 파일이나 디렉터리가 없습니다

ls 또는 ll(ls-l) 명령어를 통해서 dir 목록 조회

[j@hj0216 ~/dd]$ ls
AA1010  a2  t3

[j@hj0216 ~/dd]$ ls -l
합계 0
-rw-rw-r--. 1 j j 0  1월 25 00:11 AA1010
-rw-rw-r--. 1 j j 0  1월 25 00:28 a2
drwxrwxr-x. 2 j j 6  1월 25 00:11 t3

[j@hj0216 ~/dd]$ ll
합계 0
-rw-rw-r--. 1 j j 0  1월 25 00:11 AA1010
-rw-rw-r--. 1 j j 0  1월 25 00:28 a2
drwxrwxr-x. 2 j j 6  1월 25 00:11 t3

 

728x90
728x90

이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음 수강하며 정리한 글입니다.

 

14강 이동(mv) 이름 바꾸기(rename)

(일반 사용자 id: j, pw: j)

(관리자 id: root, pw: r)

 

rename 변경전이름 변경후이름 원본파일이름

[j@hj0216 ~/dd]$ ll
합계 4
-rw-rw-r--. 1 j j  0  1월 25 00:11 a
-rw-rw-r--. 1 j j 49  1월 25 00:11 b
[j@hj0216 ~/dd]$ rename a AAA a
[j@hj0216 ~/dd]$ ls
AAA  b

 

⭐ mv 변경전이름 변경후이름

# file 이름 변경

[j@hj0216 ~/dd]$ ls
AAA  b
[j@hj0216 ~/dd]$ mv b BBB
[j@hj0216 ~/dd]$ ls
AAA  BBB
# dir 이름 변경

[j@hj0216 ~/dd]$ ls
AA1010  BBB  t500
[j@hj0216 ~/dd]$ mv t500/ t3
[j@hj0216 ~/dd]$ ls
AA1010  BBB  t3
# file 덮어쓰기

[j@hj0216 ~/dd]$ touch a
[j@hj0216 ~/dd]$ ls
AA1010  BBB  a  t3
[j@hj0216 ~/dd]$ mv a BBB
[j@hj0216 ~/dd]$ ls
AA1010  BBB  t3

mv a BBB: 파일 BBB 존재 시, 파일 a 내용이 파일 BBB에 덮어써짐

 

 mv 이동할대상 이동할dir

[j@hj0216 ~/dd]$ mv AAA /var
mv: cannot move `AAA' to `/var/AAA': 허가 거부

* 일반 사용자: /home/일반사용자 dir, /tmp dir 제외 write 불가

(drwxr-xr-x.  19 root root  267  1월 15 19:16 var # 일반 사용자 write 권한 X)

 

[j@hj0216 ~/dd]$ mkdir /tmp/d20
[j@hj0216 ~/dd]$ ls /tmp
d20
ks-script-90wngG
...
[j@hj0216 ~/dd]$ mv AAA /tmp/d20
[j@hj0216 ~/dd]$ ls /tmp/d20
AAA

mv AAA /tmp/d20: AAA 파일 /tmp/d20 dir로 이동

 

 mv 이동할대상 변경할이름

[j@hj0216 ~/dd]$ ls /tmp/d20
AAA
[j@hj0216 ~/dd]$ mv /tmp/d20/AAA AA1010
[j@hj0216 ~/dd]$ ls
AA1010  BBB  DD300
[j@hj0216 ~/dd]$ ls /tmp/d20/

mv /tmp/d20/AAA AA1010: 파일 AAA를 현재 dir으로 이동하면서 AA1010으로 이름 변경

ls /tmp/d20/: 파일이 '이동'한 것이므로 기존 dir에는 해당 파일 존재 X

 

728x90
728x90

이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음 수강하며 정리한 글입니다.

 

13강 파일 복사(cp) 삭제(rm)

(일반 사용자 id: j, pw: j)

(관리자 id: root, pw: r)

 

cp 복사

[j@hj0216 ~/dd]$ cp /etc/a* .
cp: omitting directory `/etc/alternatives'
cp: cannot open `/etc/anacrontab' for reading: 허가 거부
cp: omitting directory `/etc/audisp'
cp: omitting directory `/etc/audit'
[j@hj0216 ~/dd]$ ls
adjtime  aliases  aliases.db  asound.conf
[j@hj0216 ~/dd]$ cp /etc/b* .
cp: omitting directory `/etc/bash_completion.d'
cp: omitting directory `/etc/binfmt.d'
[j@hj0216 ~/dd]$ ls
adjtime  aliases  aliases.db  asound.conf  bashrc
[j@hj0216 ~/dd]$ cp -r /etc/b* .
[j@hj0216 ~/dd]$ ls
adjtime  aliases.db   bash_completion.d  binfmt.d
aliases  asound.conf  bashrc

 

[j@hj0216 ~/dd]$ cp /etc/a* .

/etc dir에 a로 시작하는 모든 파일 .(현재 dir)로 복사

[j@hj0216 ~/dd]$ cp -r /etc/b* .

/etc dir에 b로 시작하는 모든 파일 및 dir .(현재 dir)로 복사

* r: recursive(재귀적), dir 포함

 

rm 삭제

[j@hj0216 ~/dd]$ rm a*
[j@hj0216 ~/dd]$ rm b*
rm: cannot remove `bash_completion.d': 디렉터리입니다
rm: cannot remove `binfmt.d': 디렉터리입니다
[j@hj0216 ~/dd]$ ls
bash_completion.d  binfmt.d
[j@hj0216 ~/dd]$ rm -r b*
[j@hj0216 ~/dd]$ ls
[j@hj0216 ~/dd]$

 

[j@hj0216 ~/dd]$ rm b*

현재 dir에서 b로 시작하는 파일 삭제(dir 삭제 불가)

[j@hj0216 ~/dd]$ rm -r b*

현재 dir에서 b로 시작하는 파일 및 dir 삭제

 

 

cp 복사 및 이름 바꾸기

[j@hj0216 ~/dd]$ cp /etc/bashrc b3
[j@hj0216 ~/dd]$ ll
합계 16
-rw-rw-r--. 1 j j    0  1월 24 23:30 a
-rw-rw-r--. 1 j j  144  1월 24 23:30 a2
-rw-r--r--. 1 j j 2853  1월 24 23:31 b2
-rw-r--r--. 1 j j 2853  1월 24 23:31 b3
-rw-r--r--. 1 j j 2853  1월 24 23:30 bashrc

cp 복사대상 파일이름

-> 복사대상이 파일이름으로 바뀌어서 복사됨

 

[j@hj0216 ~/dd]$ cp /etc/bashrc a
[j@hj0216 ~/dd]$ ll
합계 20
-rw-rw-r--. 1 j j 2853  1월 24 23:31 a
-rw-rw-r--. 1 j j  144  1월 24 23:30 a2
-rw-r--r--. 1 j j 2853  1월 24 23:31 b2
-rw-r--r--. 1 j j 2853  1월 24 23:31 b3
-rw-r--r--. 1 j j 2853  1월 24 23:30 bashrc

cp 복사대상 파일이름

-> 만일 현재 dir에 존재하는 파일이름으로 이름 지정 시, 해당 파일에 내용이 덮어 써짐

[j@hj0216 ~/dd]$ cp -i /etc/bashrc a
cp: overwrite `a'? n

단, option -i(interactive) 추가 시, overwrite에 대한 여부 확인

[j@hj0216 ~/dd]$ cp -f /etc/bashrc a2

단, option -f(force) 추가 시, 확인 없이 강제로 덮어 써짐

 

[j@hj0216 ~/dd]$ cp /etc/bashrc d2
[j@hj0216 ~/dd]$ ls d2
bashrc

cp 복사대상 dir이름

-> 만일 현재 dir에 존재하는 dir이름을 작성 시, 작성된 dir 하위에 해당 파일과 동일한 이름으로 복사됨

 

 

rm 삭제 및 추가 옵션

[j@hj0216 ~/dd]$ rm a*
[j@hj0216 ~/dd]$ rm [b-t]*
rm: cannot remove `d2': 디렉터리입니다

rm a*: a로 시작하는 모든 파일 삭제

rm [b-t]*: b-t로 시작하는 모든 파일 삭제(dir 삭제 불가)

 

[j@hj0216 ~/dd]$ rm -rf *
[j@hj0216 ~/dd]$ ls

rm -rf *: 모든 파일 및 dir 강제 삭제

 

[j@hj0216 ~/dd]$ cp /etc/* .
[j@hj0216 ~/dd]$ ls a*
adjtime  aliases  aliases.db  asound.conf
[j@hj0216 ~/dd]$ rm [^a]* -f
[j@hj0216 ~/dd]$ ls
adjtime  aliases  aliases.db  asound.conf

rm [^a]* -f: a로 시작하는 파일 제외 모두 강제 삭제

 

[j@hj0216 ~/dd]$ rm -i *
rm: remove 일반 파일 `adjtime'? y
rm: remove 일반 파일 `aliases'? y
rm: remove 일반 파일 `aliases.db'? y
rm: remove 일반 파일 `asound.conf'? y

rm -i *: 삭제 시, 삭제 여부 확인

 

728x90
728x90

이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음 수강하며 정리한 글입니다.

 

12강 경로 이동(cd) 절대경로/상대경로

(일반 사용자 id: j, pw: j)

(관리자 id: root, pw: r)

 

절대경로: / dir부터 경로 입력

상대경로: 현재 dir부터 경로 입력

 

[j@hj0216 ~]$ cd /etc
[j@hj0216 /etc]$ cd /usr/local/share
[j@hj0216 /usr/local/share]$ cd /usr/local/lib
[j@hj0216 /usr/local/lib]$ pwd
/usr/local/lib
[j@hj0216 /usr/local/lib]$ cd /var/lib/
[j@hj0216 /var/lib]$ cd /bin
[j@hj0216 /bin]$ pwd
/bin
[j@hj0216 /bin]$ cd /usr/local/bin
[j@hj0216 /usr/local/bin]$ pwd
/usr/local/bin
[j@hj0216 /usr/local/bin]$ cd bin
-bash: cd: bin: 그런 파일이나 디렉터리가 없습니다
# 상대경로 지정 시, 현재 및 하위 file or dir 탐색
[j@hj0216 ~]$ cd /usr/local/share/man
[j@hj0216 /usr/local/share/man]$ pwd
/usr/local/share/man
[j@hj0216 /usr/local/share/man]$ cd info
-bash: cd: info: 그런 파일이나 디렉터리가 없습니다
[j@hj0216 /usr/local/share/man]$ cd ../info
[j@hj0216 /usr/local/share/info]$ pwd
/usr/local/share/info

 

상대경로는 해당 dir 또는 하위 dir로만 이동이 가능하므로,

현재 위치가 /usr/local/share/man일 경우, info로 상대 경로를 통한 이동은 불가능함

그러므로 cd ../ 를 통해 상위 dir(/usr/local/share)로 갔다가 info로 상대 경로를 통해서 이동

 

dir과 경로

/: system root dir

~: home dir(home/user_name)

(/home으로 이동: cd ~, cd, cd $HOME)

./: 현재 dir

../: 상위 dir

728x90