윈도우에서 hfs에 파일을 올린 뒤,
칼리 리눅스 쉘에서 wget 윈도우ip주소:포트번호/전송할파일
ex) wget http://192.168.25.54:8080/hihi.txt
입력하면 전송된다.
'Kali Linux' 카테고리의 다른 글
NESSUS 설치 및 실행 방법 (0) | 2020.10.07 |
---|
윈도우에서 hfs에 파일을 올린 뒤,
칼리 리눅스 쉘에서 wget 윈도우ip주소:포트번호/전송할파일
ex) wget http://192.168.25.54:8080/hihi.txt
입력하면 전송된다.
NESSUS 설치 및 실행 방법 (0) | 2020.10.07 |
---|
출처
: 인프런 - 자바 프로그래밍 입문
BitSet 클래스 (0) | 2025.02.17 |
---|---|
DTO와 VO (0) | 2025.02.12 |
Records (1) | 2025.02.12 |
orElse vs orElseGet 차이점 (0) | 2025.02.12 |
JAVA) print, printf, println 차이점 (0) | 2021.03.11 |
IDLE는 "Integrated DeveLopment Environment"의
약자이며 "통합개발환경"이라는 의미이지요.
파이썬으로 프로그램을 작성할 때
도움을 주는 기능을 제공하기 때문에
"통합개발환경"이라고 부를 뿐
대단한 다른 의미가 있는 것은 아닙니다.
쉘 창에서는 명령문을 입력하고 엔터 키를 누르면
즉시 그 실행 결과가 표시됩니다.
쉘 창은 간단한 명령문이나 연산식을 테스트하고
실행 결과를 확인하기에는 아주 좋습니다.
그러나 아무리 길게 코딩을 해도
쉘 창은 한번 닫으면 모든 작업 내용이 없어집니다.
우리가 코딩한 내용을 그대로 저장해두려면
파일을 사용해야 합니다.
파이썬 코딩 파일을 만들어두면 됩니다.
이제 다음과 같이 해보세요.
쉘 창에서 [File][New File] 메뉴를 클릭합니다.
Ctrl + N 키를 눌러도 됩니다.
코딩 창에는 프롬프트가 아니라 커서가 표시됩니다.
앞의 창을 보고 틀리지 않게 천천히 입력하세요.
각 명령문 뒤에서
엔터키를 누르면 커서가 다음 라인으로 이동합니다.
쉘 창과 다르게 코딩 창에서는
명령문을 입력하고 엔터 키를 눌러도
즉시즉시 결과가 표시되지 않습니다.
코딩 창에 입력되는 명령문은
모든 명령문이 다 입력된 후
한꺼번에 실행되기 때문입니다.
또한 쉘 창과 달리
10+4와 같이 수식만 입력해서
결과를 얻을 수 없습니다.
수식의 결과를 얻으려면
print 함수의 괄호 안에 수식을 입력하며
이 때는 따옴표를 사용하지 않습니다.
빈 라인은 없어도 되는데
코드를 보기 좋게 하기 위해 삽입했습니다.
그냥 엔터 키를 한번 누르면
빈 라인이 삽입됩니다.
메뉴에서 [Save]를 클릭하고
코드를 저장할 폴더를 찾아갑니다.
Ctrl + S를 눌러도 됩니다.
[다른 이름으로 저장] 창에서 [파일 이름]을 지정하고
[파일 형식]이 "Python files (".py, *.pyw)"인가를 확인한 후
[저장] 버튼을 클릭합니다.
폴더에는 위와 같이 코드가 파일로 저장됩니다.
파이썬 코딩 파일은 확장자가 ".py"입니다.
이제 쉘 창도, 코딩 창도 모두 닫고
파이썬 작업을 완전히 끝내세요.
그리고 다시 [IDLE (Python 3.6 32-bit)]를 클릭해서
쉘 창을 부릅니다.
[File][Open] 메뉴로 "sample01.py" 파일을 부르면
코딩 창이 열리면서
이전에 저장해둔 코드가 그대로 보입니다.
이 코드를 실행시키기 위해
코딩 창에서 [Run][Run Module] 메뉴를
클릭합니다(F5 키를 눌러도 됩니다.)
그러면 다음과 같이 쉘 창에
코드가 실행된 결과가 표시됩니다.
이렇게 코딩 파일을 만들어두면
언제든지 코딩 내용을 불러서
몇 번이라도 재실행시킬 수 있습니다.
우리는 앞으로 간단한 테스트를 할 때는
즉시즉시 실행 결과를 알 수 있는
쉘 창에서 작업할 겁니다.
하지만 코딩이 길어지거나
논리적으로 곰곰히 생각할 필요가 있을 때는
코딩 파일을 사용할 겁니다.
출처 :
코딩정복 with 파이썬(PCBOOK)
너무 기본 태그인지라 포스팅하기가 좀 그릏지만 제가 좋아하는 언니를 위해서 열심히 끄적끄적해봅니다.
인터넷 오픈 소스에서 가져온 그림이지만
이렇게 이쁘게 뭔가 정보를 보여줄 때 <table>태그를 사용해요
그 외에도 활용도가 높은 기본 템(?) 이죠
그냥 여러 예시 구현해보면서 진행할게요
테이블은 기본적으로 <table> </table>태그를 사용합니다
테이블을 구현하기 위해서 알아야하는 기본 태그가 몇 개 있는데요~
◆ tr태그
일반 행은 table row의 약자 <tr></tr>태그를 사용합니다. 위의 그림의 경우 총 6개의 행이 있으니 <tr>이 6개 사용됐겠네요
◆td태그란
첫 번째 데이터 행안에는 몇 개의 데이터가 있나요 4개의 데이터가 들어있네요
각각의 행은 4개의 데이터를 가지고 있어요 (이름, 등록날짜, 역할, 상태)
table data라고 해서 <td></td>태그를 사용합니다
◆th태그란
즉 한 행에 4개의 데이터가 있으니, <tr><td></td> <td></td> <td></td> <td></td> </tr> 구조를 띠겠어용
저어어기 사진 예시에서 보이듯 맨 첫번째줄이 나 제목이야~를 알리기 위해서 진하게 표시되어있죠
ex Username / Date registered / Role / Status 라인부문
<th></th>태그는 이와 같이 제목 데이터 표시할 때 사용합니다. (table headline 의 약자인듯?)
제목에는 <td>대신에 <th>를 써주면 됩니다.
기본 테이블로 함 구성해보자
<table>
<tr><th>제목</th><th>제목2</th></tr>
<tr><td>1행1데이터</td><td>1행2데이터</td></tr>
<tr><td>2행1데이터</td><td>2행2데이터</td></tr>
</table>
요렇게 작성하면 결과는 아래처럼 됩니다.
Border 속성 - 테두리선
Border css는 깔끔한 표를 만들기 위해서 만져줘야 하는 속성이죠.
[1] 전체 테두리 border , [2] 데이터마다 border(seperate), [3]겹치는 거 싫어 깔끔하게 원라인으로
한 눈에 그림으로 보니까 border를 어떻게 해주느냐에 따라 어떤 차이가 있는지 딱 보이죠?
[1] table { border: 1px solid red; } <!--1px :선의 굵기 solid: 선 종류 red: 선 색깔 -->
[2] td { border: 1px solid red; }
<!--테이블은 이렇게 하나의 데이터를 각각 감싸는 게(separate) 기본 설정이라 따로 collapse 속성을 설정해주지 않으면
이와 같이 나옵니다. 이렇게 겹치는거 보기 싫고 한줄로 깔끔하게 보여지고 싶다면 [3]-->
[3] table { border-collapse : collapse } td { border: 1px solid red; }
[1] 첫 번째는 테이블에다가 테두리설정을 해준거라 맨 겉에만 됨.
[2] 두 번째는 th에는 테두리가 없는데 td에만 테두리가 있는걸로 보아 td에 border 속성을 넣어준거죠.
[3] 근데 이렇게 겹쳐ㅣ는게 싫을 경우 border-collapse옵션을 사용합니다.
[4] 열 선 없이 행에다가만 적용 [5] td에다가 bottom으로 적용했을 경우 저렇게 공백이 생김 [6] tr에다가만 적용
신기(?)한 사실은 [4]그림처럼 열[column] 선 없이 행에다가만 border를 적용하고 싶어서
tr { border: 1px solid red; } 이렇게 tr에다가 border css를 적용하려고 하면 먹지 않습니다.
그래서 tr이 아닌 td에다가 (border하면 열[column] 선까지 포함되므로) bottom만 적용하는 코드로 구현하면 [5]그림처럼 data사이의 간격에 선이 이어지지 않고 잘려요
[5] td { border-bottom: 1px solid red; }
그래서 tr에 적용을 해주는게 좋은데 tr의 경우 separate model일 경우에는 border속성이 적용되지 않습니다.
아래 코드처럼 테이블 태그를 separate가 아닌 collapse 속성으로 변경 후 border속성을 적용시켜줘야 제대로 작동합니다.
[4] table { border-collapse: collapse; }
tr { border : 1px solid red; }
행의 모든 경계를 그리는 것! 그러므로 [4]와 같은 모양이 되고, 겉테두리 경계를 제거하고 싶으면 border대신 border-bottom속성만 적용해주면 [6]처럼 구현할 수 있습니다.
border (전체) , border-top (위 라인만) , border-bottom (아래 선에게만), border-left (왼쪽), border-right(오른쪽)
이렇게 전체에 줄 수도 각각에게 줄 수도 있습니다.
선 종류로는 solid외에도 아래처럼 dashed, dotted, double 등이 있습니다.
[7] table { border: 3px dashed blue; } [8] table {border: 3px dotted coral; } [9] table { border: 3px double orange;}
맨 첫 번째께 dashed 했을 때 점선
두 번째가 dotted했을 때
마지막이 두줄선 즉 double 했을 때 결과입니다.
[2-1] 너무 따닥따닥 붙어있어서 보기 힘듬
[2-2] 어떤건 데이터가 짧고 어떤건 길고 간격을 떼어나도 안이쁨
이렇게 [2-1]처럼 되어 있으면 너무나 보기 힘들죠. 그래서 좀 깔끔하게 정리해보는..
한 행에 [1행데이터][응][경기도고양시블라블라] 이렇게 3개의 데이터가 들어있는데 너무 따닥따닥 붙어 있어서 알아보기가 힘들어요. 그래서 데이터의 가로 길이를 설정해서 좀 띄어줍니다.
[2-2] td { width: 200px; }
그런데 2번째 열은 칸은 긴데 내용이 너무 짧은 데이터라 이상하잖아요 ex) 성별(여 or 남) 질환(있음 or 없음)등등
[2-3] 각각 열의 크기에 맞게 길이 정하기
[2-4] 데이터는 왼쪽정렬인데 제목만 가운데정렬인거 거슬렸던거 통일
[2-5] nth-child응용해서 색깔 행에 적용시켜보기
[2-3]처럼 행에 맞게 길이를 주는 데 도움되는 녀석으로 nth-child()라는 셀렉터를 사용해볼거예요.
뒤에 ':nth-child(n)'를 붙여주면 n번째 요소에만 적용해줍니다. 즉 :nth-child(1)은 첫번째 요소인거죠
[2-3]
td:nth-child(1){ width: 100px; }
td:nth-child(2){ width:60px; }
td:nth-child(3){ width:200px;}
[2-4] th는 기본적으로 가운데 정렬입니다. text-align 속성으로 통일성을 높이고자 왼쪽정렬로 바꿔주었어요
th { text-align:left; }
[2-5] nth-child의 응용입니다. 이번에는 td가 아닌 짝수행(tr)의 배경색깔 변경에 사용했어요
tr:nth-child(even){ background: ghostwhite; }
[2-6] tr 에 배경색을 줬을 경우
[2-7] 첫 번째 행만 제외하고 속성을 적용시키고 싶을 경우
[2-6] tr{ background: lightgray; }
[2-7] tr:not(:first-child) {background : lightgray; } <!--first-child는 결국 nth-child(1)과 같아요-->
제외하고 싶을 경우 not키워드를 이용하면 된다는거~!
first-child는 nth-child(1)과 동일합니다. 이런식으로 선별적으로 배경색을 줄 수 있어요. [2-5]그림 추가적으로 참조!
근데 열뿐만 아니라 행사이에서도 너무 글자크기만큼만 행이 크면 답답해보이잖아요
padding을 주고 싶은데 tr에는 또 얘가 안먹습니다..ㅎ
예전에는 padding이 tr을 포함해서 모든 element에 적용이 됐다고 해요 근데 복잡한 어떤 구조때문인지 padding이 안먹히게 바뀌었고 그것 때문에 생긴 불편함으로 논란이 많았지만,, 안먹히는걸로 결론이 난 상태입니다 (자세한 얘기 아시는분은 알려주시면 감사하겠음..) 그래서 내부 간격을 위해 우리는 td에다가 padding을 적용할거~
[2-8] [2-9] border로 명확히 보기
좀 간격이 달라진게 보이죠? [2-8]은 td{ padding : 15px 5px 10px 5px; } 이렇게 적용한 결과입니다
padding : 위 오른 밑 왼 (시계 방향으로 간격을 준다고 생각하면 돼요
좀 더 확실히 확인하고 싶으면 [2-9]처럼 border를 일부로 줘서 어떻게 늘어나는지 확인하면 좋은 복습이 될 듯 합니다.
출처 :
쉘을 통해 명령을 실행하고 전체 출력을 문자열로 반환하는 함수.
shell_exec ( string $cmd ) : string |
이 함수는 backtick 연산자와 동일하다.
cmd
실행될 명령
오류가 발생하거나 프로그램이 출력을 생성하지 않을 때, NULL을 반환.
Example #1 A shell_exec() example
<?php $output = shell_exec('ls -lart'); echo "<pre>$output</pre>"; ?> |
출처 :
PHP) HTTP Response Header - Content-Disposition 속성 (0) | 2021.01.15 |
---|---|
PHP) HTTP Header - MIME-Type, Content-Type (0) | 2021.01.14 |
PHP) system() 함수 (0) | 2020.11.05 |
PHP) $SERVER, $_SERVER['PHP_SELF'] (0) | 2020.11.05 |
PHP) str_replace() 함수 : 문자열 치환 함수 (0) | 2020.11.05 |
(PHP 4, PHP 5, PHP 7)
system( string $command [, int &$return_var ] ) : string |
system()은 주어진 명령을 실행하고 결과를 출력한다는 점에서 C의 함수과 같다.
또한, system() 호출은 PHP가 서버 모듈로 실행중인 경우, 각 출력 라인 후에 웹 서버의 출력 버퍼를 자동으로
비우려고한다.
명령을 실행하고 명령의 모든 데이터를 간섭없이 직접 전달해야하는 경우 passthru() 함수를 사용하여라.
command
실행될 명령.
return_var
return_var 인수가 있으면 실행된 명령의 반환 상태가 이 변수에 기록됨.
성공시, 마지막라인 명령의 결과값을 반환.
실패시, FALSE 반환.
Example #1 system() example
<?php echo '<pre>'; // 셸 명령 "ls"의 모든 결과 출력 및 반환 // $last_line의 마지막 출력 라인. 반환 값 저장 // $retval의 쉘 명령. $last_line = system('ls', $retval); // 추가 정보 출력. echo ' </pre> <hr />Last line of the output: ' . $last_line . ' <hr />Return value: ' . $retval; ?> |
출처 :
PHP) HTTP Header - MIME-Type, Content-Type (0) | 2021.01.14 |
---|---|
PHP) shell_exec() 함수 (0) | 2020.11.05 |
PHP) $SERVER, $_SERVER['PHP_SELF'] (0) | 2020.11.05 |
PHP) str_replace() 함수 : 문자열 치환 함수 (0) | 2020.11.05 |
PHP) <?= ?> 태그 (0) | 2020.11.05 |