윈도우에서 hfs에 파일을 올린 뒤,

 

칼리 리눅스 쉘에서 wget 윈도우ip주소:포트번호/전송할파일

 

ex) wget http://192.168.25.54:8080/hihi.txt

입력하면 전송된다.

 

'Kali Linux' 카테고리의 다른 글

NESSUS 설치 및 실행 방법  (0) 2020.10.07

Java 프로그램 실행 구조

(Java 소스 작성부터 프로그램 실행까지의 순서)

 

 

 

 

출처

: 인프런 - 자바 프로그래밍 입문

'Web Programming Language > JAVA' 카테고리의 다른 글

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> </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 했을 때 결과입니다.

 

 

표 간격 이쁘게 --열(column)

[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]그림 추가적으로 참조!

 

 

표 간격 이쁘게2 -- 행(row)

근데 열뿐만 아니라 행사이에서도 너무 글자크기만큼만 행이 크면 답답해보이잖아요

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를 일부로 줘서 어떻게 늘어나는지 확인하면 좋은 복습이 될 듯 합니다.

 

 

 

출처 :

jhnyang.tistory.com/285

shell_exec() 함수

쉘을 통해 명령을 실행하고 전체 출력을 문자열로 반환하는 함수.

 

 

함수 형태

shell_exec ( string $cmd ) : string

이 함수는 backtick 연산자와 동일하다.

 

 

파라미터

cmd

실행될 명령

 

 

반환 값

오류가 발생하거나 프로그램이 출력을 생성하지 않을 때, NULL을 반환.

 

 

예시

Example #1 A shell_exec() example

<?php
$output 
shell_exec('ls -lart');
echo 
"<pre>$output</pre>";
?>

 

 

 

출처 :

www.php.net/manual/en/function.shell-exec.php

system() 함수

(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;
?>

 

 

출처 :

www.php.net/manual/en/function.system.php

+ Recent posts