GithubHelp home page GithubHelp logo

minishell's Introduction

Welcome to Sungwoo's Github Profile ๐Ÿ‘‹

Tech Blog Badge Linkedin Badge Gmail Badge Youtube Badge

๐ŸŒฑ Iโ€™m currently learning

  • ๐Ÿ“š Data Science (interests in Statistics, Big Data)
  • ๐Ÿ›  Devops, CI/CD with Github Actions, Docker(& Docker Compose), AWS, Vagrant

Sungwoo's github stats

minishell's People

Contributors

cos18 avatar davkim1030 avatar

Watchers

 avatar  avatar  avatar  avatar

minishell's Issues

์ž…๋ ฅ๋œ ๊ฐ’์„ ํ† ํฐ์œผ๋กœ ๋‚˜๋ˆ„๊ธฐ

Libft์˜ split๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ๋ฐ›์•„์˜จ ์ž…๋ ฅ๊ฐ’์„ ํ† ํฐ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ  char ๋”๋ธ” ํฌ์ธํ„ฐ๋กœ ์ €์žฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ๋”ฐ์Œํ‘œ๊ฐ€ ๋ฌถ์˜€์„ ๊ฒฝ์šฐ, ํ† ํฐ์—์„œ ์ œ์™ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐœํ–‰๋ฌธ์ž๋„ ๋„ฃ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋งˆ๊ฐ๊ธฐํ•œ

2021-01-04 18์‹œ ์˜จ๋ผ์ธ ๋ฏธํŒ… ์ „๊นŒ์ง€

์ž…๋ ฅ์‹œ ๋”ฐ์Œํ‘œ(`'`, `"`)์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ

์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด์™”์„ ๋•Œ ํฐ ๋”ฐ์Œํ‘œ(")๋‚˜ ์ž‘์€ ๋”ฐ์Œํ‘œ(')๊ฐ€ ๋“ค์–ด์™”์„ ๋•Œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

  • ๋”ฐ์Œํ‘œ๊ฐ€ ์—ด๋ ธ์„ ๋•Œ, ์•คํ„ฐ๊ฐ€ ์ณ์ง€๋ฉด ์ƒˆ๋กœ์šด ์ค„์„ ๋ฐ›์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค
  • ์ข…๋ฅ˜๊ฐ€ ๋‹ค๋ฅธ ๋”ฐ์Œํ‘œ๋Š” ๋ฌธ์ž๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ

minishell$ echo 'hello"
> "world''
> aaa'test
> '
END

๋งˆ๊ฐ๊ธฐํ•œ

2021-01-04 18์‹œ ์˜จ๋ผ์ธ ๋ฏธํŒ… ์ „๊นŒ์ง€

Split๋œ ๋ช…๋ น์–ด๋“ค๋ฅผ ๊ตฌ์กฐ์ฒด์— ๋„ฃ๊ณ  ์‹œ์Šคํ…œ ๋‚ด๋ถ€ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ฒ˜๋ฆฌํ• ์ง€ ๊ตฌ๋ถ„

Token ๋‹จ์œ„๋กœ ์ชผ๊ฐœ์ง„ ๋ช…๋ น์–ด๋ฅผ ๊ตฌ์กฐ์ฒด์— ๋„ฃ์–ด ์ดํ›„ ์—ฌ๋Ÿฌ ๋ช…๋ ์–ด ํ•จ์ˆ˜์— ์˜ํ•ด ์ฒ˜๋ฆฌ๋  ์ˆ˜ ์žˆ๊ฒŒ pre-processingํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋„ฃ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ด๋•Œ ๊ตฌํ˜„๋œ ํ•จ์ˆ˜๋กœ ์‹คํ–‰์‹œํ‚ฌ์ง€ ์‹œ์Šคํƒฌ ๋‚ด๋ถ€์—์„œ ์‹คํ–‰์‹œํ‚ฌ์ง€ ๊ตฌ๋ถ„ํ•ด์ฃผ๋Š” ๋ณ€์ˆ˜๋„ ๊ตฌ์กฐ์ฒด์— ๋„ฃ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

execve๋ฅผ ์‚ฌ์šฉํ•ด ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ธํŒ…๋˜์–ด์žˆ๋Š” ๋ช…๋ น์–ด ์‹คํ–‰

Subject์— ๋ช…์‹œ๋˜์–ด์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Search and launch the right executable (based on the PATH variable or by using relative or absolute path) like in bash

execve ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

export, unset argument ์—๋Ÿฌ

export, unset ๋ช…๋ น์–ด ์ฒ˜๋ฆฌ์‹œ argument๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ segfault๊ฐ€ ์ผ์–ด๋‚ฌ์Šต๋‹ˆ๋‹ค.

`echo` ๊ตฌํ˜„

echo with option โ€™-nโ€™

ํ™˜๊ฒฝ๋ณ€์ˆ˜ ํ•ธ๋“ค๋ง๋„ ๊ฐ™์ด ํ•ด์•ผํ•จ

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.