[완료]쉘에서 디렉토리의 화일명의 리스트를 만들고 싶습니다.

Leo Park의 이미지

안녕하세요.

지금 쉘을 만들고 있는데요....
두개의 디렉토리의 내용을 비교하기 위해서 양쪽의 화일리스트를 만들려고 합니다.
기본적으로 두 디렉토리를 같아야 합니다.

그래서, 두개의 디렉토리의 내용을 리스트로 만들려고 합니다.
(현재, ls명령을 이용해서 여러가지 해 보았는데...잘 되지 않아서 도움을 청합니다.)

현재 ls -R을 사용하면 아래와 같이 출력됩니다.
-------------------------------------------
park@ikrp100[85]: ls -R
.:
db_test.tar log/ old/ pg0225.tar src0226.tar
ini/ new/ ope.tar release.tar.gz tmp/

./ini:
release_pg.ini

./log:
release.log

./new:
OPE/ sample4 sql/ src_test.tar

./new/OPE:
com/

./new/OPE/com:
wsgnmqp/

./new/OPE/com/wsgnmqp:
wsgjmqpa.com wsgjmqpb.com

./new/sql:
sql/

./new/sql/sql:
amend_del_touroku.sql mk_add.sql mk_add_yield.sql sample1.cc sample2.ini sample3.ini

./old:

./tmp:
target_action_01pg_OPE_sample.ini target_file_01pg_OPE_sample_amend.ini
target_dir_01pg_OPE_sample_add.ini target_file_01pg_OPE_sample_del.ini
target_file_01pg_OPE_sample_add.ini target_host_01pg.ini
park@ikrp100[86]:
-------------------------------------------

그런데 저 정보를 아래와 같이 출력하고 싶습니다.
-------------------------------------------
.:db_test.tar
.:pg0225.tar
.:src0226.tar
.:ope.tar
.:release.tar.gz
./ini:release_pg.ini
./log:release.log
./new:sample4
./new:src_test.tar
./new/OPE/com/wsgnmqp:wsgjmqpa.com
./new/OPE/com/wsgnmqp:wsgjmqpb.com
./new/sql/sql:amend_del_touroku.sql
./new/sql/sql:mk_add.sql
./new/sql/sql:mk_add_yield.sql
./new/sql/sql:sample1.cc
./new/sql/sql:sample2.ini
./new/sql/sql:sample3.ini
./tmp:target_action_01pg_OPE_sample.ini
./tmp:target_file_01pg_OPE_sample_amend.ini
./tmp:target_dir_01pg_OPE_sample_add.ini
./tmp:target_file_01pg_OPE_sample_del.ini
./tmp:target_file_01pg_OPE_sample_add.ini
./tmp:target_host_01pg.ini
-------------------------------------------

즉, 각 화일마다 현 디렉토리를 기준으로 모두 출력하고 싶습니다.
디렉토리가 비어 있다면 출력하지 않아두 되구요.

설명한다고 했는데 잘 되었는지 모르겠습니다.
언듯 듣기로 "와일드카드"인가를 쓰면 될거라고 하는데....
잘 몰라서 이해를 못하고 있습니다.
그래서 현재 ls명령어만 이렇게 저렇게 해보고 있는데....

쉘명령어도 좋고, AWK, SED도 좋습니다.

그럼, 도움 부탁드리겠습니다.
즐거운 하루 되세요~

=================================================

find를 이용해서 많이 해결하였습니다.
그런데, find해서 나온 값의
맨 앞부분에 붙은 .을 제거하고 싶은데요....
어떻게 하면 가능할까요?

./aaa/bbb/ccc/ddd/eee.exe 를
/aaa/bbb/ccc/ddd/eee.exe 로 하고 싶습니다.

----------------------------------

echo ./aaa/bbb/ccc/ddd/eee.exe | sed 's%.%%g' 하면
결과가 널로 나오고요.

echo ./aaa/bbb/ccc/ddd/eee.exe | sed 's%./%/%g' 하면
결과가 /aa/bb/cc/dd/eee.exe 로 나옵니다.(aaa,bbb,ccc,ddd가 aa,bb,cc,dd로)

echo ./aaa/bbb/ccc/ddd/eee.exe | awk -F"." '{print $2}' 하면
결과가 /aaa/bbb/ccc/ddd/eee 로 나옵니다.

echo ./aaa/bbb/ccc/ddd/eee.exe | awk -F"./" '{print $2}' 하면
결과가 aa 로 나옵니다.

그럼, 부탁드리겠습니다.

송효진의 이미지

find > list.txt

emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇개 안되요~

Leo Park의 이미지

송효진님~
답변 감사드립니다.
----------------------------------
그런데, find해서 나온 값의
맨 앞부분에 붙은 .을 제거하고 싶은데요....
어떻게 하면 가능할까요?

./aaa/bbb/ccc/ddd/eee.exe 를
/aaa/bbb/ccc/ddd/eee.exe 로 하고 싶습니다.

----------------------------------

echo ./aaa/bbb/ccc/ddd/eee.exe | sed 's%.%%g' 하면
결과가 널로 나오고요.

echo ./aaa/bbb/ccc/ddd/eee.exe | sed 's%./%/%g' 하면
결과가 /aa/bb/cc/dd/eee.exe 로 나옵니다.(aaa,bbb,ccc,ddd가 aa,bb,cc,dd로)

echo ./aaa/bbb/ccc/ddd/eee.exe | awk -F"." '{print $2}' 하면
결과가 /aaa/bbb/ccc/ddd/eee 로 나옵니다.

echo ./aaa/bbb/ccc/ddd/eee.exe | awk -F"./" '{print $2}' 하면
결과가 aa 로 나옵니다.

그럼, 부탁드리겠습니다.

■■■■■■■
http://leo.cbnu.ac.kr/
Dream as if you'll live forever, live as if you'll die tomorrow.

■■■■■■■
http://leo.cbnu.ac.kr/
Dream as if you'll live forever, live as if you'll die tomorrow.

M.W.Park의 이미지

~$ echo ./aaa/bbb/ccc/ddd/eee.exe | sed 's/^\.//g'
/aaa/bbb/ccc/ddd/eee.exe

-----
오늘 나의 취미는 끝없는, 끝없는 인내다. 1973 法頂

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

Leo Park의 이미지

M.W.Park님
감사합니다.
잘 해결되었습니다.
즐거운 금요일과 주말되세요~

■■■■■■■
http://leo.cbnu.ac.kr/
Dream as if you'll live forever, live as if you'll die tomorrow.

■■■■■■■
http://leo.cbnu.ac.kr/
Dream as if you'll live forever, live as if you'll die tomorrow.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.