Sunday, June 4, 2023

Linux Command Line Hackery Series: Part 1




In this concise article we will learn some basics of how to use Linux Command line, so lets get started.

Requirements:

1. An open Terminal in your Linux Box. I'm using Kali Linux 2.0
or you can check out this amazing website Webminal

Command:  ls
Syntax:         ls [flag(s)]
Function:      ls is short for list. ls command is used to list the contents of a directory these contents include files, folders, and links. ls has many optional flags as well, some of them are described below
Flags:    -a this flag is used to view hidden files that is those files whose names are preceded                      by a '.'(dot)
               -l  this flag is used to view file permissions, owner of the file, group of the owner, the                        file size, the modification date, and the filename. We'll talk more about it in later                            articles.

Command:  mkdir
Syntax:         mkdir dirname
Function:      mkdir is used to create a directory (or a folder) with the name which is followed by the command

now lets create a directory in our current directory named as myfiles, how would you do that?

mkdir myfiles

which command should we use in order to verify that the directory has been created in our current folder?

ls

this will list all the files and directories in our current folder. Do you see myfiles directory listed?

Command:  cd
Syntax:         cd path/to/directory
Function:      cd is short for change directory. It is used to navigate directories, or to make it clear it does the same thing as what double clicking on a folder do except it doesn't show you contents of the directory :(. In order to navigate or visit another directory we need to provide it's ABSOLUTE-PATH or RELATIVE-PATH you heard that, didn't ya?

Paths are of two types relative path or absolute path (also called full-path). Relative as the name suggests is relative to the current directory, so if you have to navigate to a folder within the current directory you'll just simply type cd directory_name. But what if you have to navigate to a directory which is the parent of current directory? Well it's easy just type cd .. (yes double dots, you noticed that .. and . thing when you typed ls -a, didn't you?). The double dots mean the directory above current directory (i,e the parent directory) and a single dot means the current directory (i,e the directory that I'm currently in). Now if you have to navigate two directories above current directory using relative path navigation you'll type

cd ../.. 

here .. means previous directory and another .. after slash (/) means the previous directory of the previous directory sounds confusing..!

The Absolute Path means full path to the file or folder which starts from root directory. Say I want to navigate to my home folder using absolute path, then I'll type:

cd /home/user

where user is the username
Now think of navigating to the myfiles folder from your home directory using the absolute path, it will be something like this:

cd /home/user/myfiles

Exercise: Create a directory project1 inside your home directory and inside the project1 directory create a file and a directory named index.html and css respectively. Then navigate to the css directory and create a style.css file inside it. At last navigate out of the css directory to home both using the relative and absolute path mechanisms.

[Trick: To get quickly out of any directory to your home directory type cd ~ [press Enter] or simply cd [press Enter]]

Command:  touch
Syntax:         touch filename
Function:      touch is a nifty little function used to create an empty file (actually it's used to change access time of a file but everyone has got bad habits :P ). You can create any type of empty file with the touch command. If you are a bit curious about touch read the manual page of the touch command using the man touch command.

Now lets create a few files inside of our myfiles directory

touch file1 file2 file3

The above command creates three empty files in our current directory named file1, file2, and file3.
How will you verify that it has indeed created these three files in your current directory? I won't answer this time.

Command:  echo
Syntax:         echo Hacker manufacturing under process
Function:      echo is used to display a line of text. By default echo displays a line of text on the terminal which is the standard output device (stdout for short). However we can redirect the output of an echo command to a file using > (the greater than symbol).
Now if we have to echo a line of text to a file, say file1 in our myfiles directory, we will type:

echo This is file1 > file1

The above command will echo the text "This is file1" to file1.

Command:  cat
Syntax:         cat filename [anotherfilename...]
Function:      cat stands for concatenate (not that puny little creature in your house). The main function of cat is to concatenate files and display them on your terminal (or in geeky terms stdout). But its also used to display the contents of a file on your terminal.

Let's display the contents of file1 in the myfiles directory that we echoed to it using the echo command, for that we'll type:

cat file1

Awesome I can see on black screen contents of my file (what if your terminals background is white?), looks like I'm becoming a hacker. In case you don't see it then I suggest you should give up the thought of becoming a hacker. Just kidding you might have missed a step or two from the above steps that we performed.

Now lets say that we want to add another line of text to our file using the echo command should we use the same greater than (>) symbol? No, if we want to add another line (which in geeky terms is to append a line) to our file using the echo command we have to use >> (two greater than symbols) like this:

echo Another line of text >> file1

now to check the contents of file1 we'll type:

cat file1

OK we wrote two lines inside of the file1.
Does it mean we have to add three greater than symbols to write third line? Oh! I didn't thought you'd be such a genius.

A single greater than symbol (>) means redirect the output of the preceding command to a file specified after the > symbol. If the file exists then overwrite everything that's in it with the new contents and if the file does not exist then create one and write to it the output of the preceding command. So if you had typed

echo Another line of text > file1

it would have overwritten the contents of the file1 with "Another line of text" and the line "This is file1" would no longer be present in the file.

Two greater than symbols (>>) mean that append (remember the geeky term?) the output of the previous command to the end of file specified after >>. Now if you want to add another line of text to file1, you won't use >>> rather you'll use >> like this:

echo Third line in file1 >> file1

This is it for today. But don't worry we'll learn more things soon.

Related articles
  1. Hack Tools Online
  2. Pentest Tools Tcp Port Scanner
  3. Pentest Tools Open Source
  4. Pentest Tools Find Subdomains
  5. Pentest Tools Port Scanner
  6. Hacks And Tools
  7. Free Pentest Tools For Windows
  8. Free Pentest Tools For Windows
  9. Hack Tools For Games
  10. Hacker Techniques Tools And Incident Handling
  11. Pentest Tools Find Subdomains
  12. Hacker Tools Free
  13. Nsa Hacker Tools
  14. Hacking Tools For Windows Free Download
  15. Pentest Tools Apk
  16. Top Pentest Tools
  17. Hack Tool Apk No Root
  18. Hacker Tools For Pc
  19. Hacker Security Tools
  20. Hacker Tools For Ios
  21. Pentest Tools List
  22. Pentest Tools For Mac
  23. Hacking Tools For Windows 7
  24. Hacking Tools
  25. Hacking Apps
  26. Pentest Tools Subdomain
  27. Nsa Hack Tools Download
  28. Pentest Tools Url Fuzzer
  29. Top Pentest Tools
  30. Hack Website Online Tool
  31. Hack Tools For Ubuntu
  32. Hacking Tools 2020
  33. Hacking Tools Kit
  34. Hacker Tools Apk Download
  35. Hacking Tools And Software
  36. Hacking Tools 2020
  37. Hacker Tools Online
  38. Hacker Search Tools
  39. Pentest Tools Framework
  40. Pentest Tools Github
  41. Underground Hacker Sites
  42. Hack Tools Github
  43. Hack Tools For Pc
  44. Hacker Tools Github
  45. Bluetooth Hacking Tools Kali
  46. Hacking Tools For Beginners
  47. Hacking Tools For Mac
  48. Beginner Hacker Tools
  49. Hacking Tools 2020
  50. Hacking Tools Name
  51. Hacking Tools Name
  52. Hacker Tools Github
  53. Hacker Tools Software
  54. Hacker Security Tools
  55. Best Hacking Tools 2019
  56. Hacking Tools Online
  57. Hacking Tools For Pc
  58. Pentest Tools Free
  59. Underground Hacker Sites
  60. Pentest Tools Kali Linux
  61. Hacking Tools
  62. Pentest Tools List
  63. Hacking Tools For Pc
  64. Hacking Apps
  65. What Is Hacking Tools
  66. Pentest Tools Open Source
  67. Tools For Hacker
  68. World No 1 Hacker Software
  69. Hacker Tools For Pc
  70. Hacker Hardware Tools
  71. Black Hat Hacker Tools
  72. Pentest Tools Framework
  73. Pentest Tools Bluekeep
  74. Hacking Tools Name
  75. New Hacker Tools
  76. Best Pentesting Tools 2018
  77. Free Pentest Tools For Windows
  78. Pentest Tools List
  79. Underground Hacker Sites
  80. What Is Hacking Tools
  81. Hack App
  82. Pentest Tools Github
  83. Usb Pentest Tools
  84. What Are Hacking Tools
  85. Hack Tools For Games
  86. Nsa Hack Tools
  87. Hacking Tools For Mac
  88. Hacking Tools Usb
  89. Pentest Tools Url Fuzzer
  90. Hacking Tools Usb
  91. Hacking Tools Kit
  92. Hacking App
  93. Pentest Tools Linux
  94. Hacking Tools For Games
  95. Top Pentest Tools
  96. Pentest Tools Android
  97. Hack Tool Apk
  98. Hacking Tools And Software
  99. Hacking Tools 2020
  100. Nsa Hack Tools
  101. Hacker Tools Apk Download
  102. How To Make Hacking Tools
  103. Usb Pentest Tools
  104. Hacker Tools Windows
  105. Bluetooth Hacking Tools Kali
  106. Wifi Hacker Tools For Windows
  107. Hacker Tools Software
  108. Tools Used For Hacking
  109. Hacker
  110. Nsa Hack Tools Download
  111. Termux Hacking Tools 2019
  112. Pentest Tools For Windows
  113. Pentest Tools Free
  114. How To Install Pentest Tools In Ubuntu
  115. Android Hack Tools Github
  116. Hacker Tools Linux
  117. Hack Tools Github
  118. Nsa Hacker Tools
  119. Hack Website Online Tool
  120. Pentest Tools Find Subdomains
  121. Android Hack Tools Github
  122. Bluetooth Hacking Tools Kali
  123. Hack Tool Apk No Root
  124. Hack Tools
  125. Hacking Tools Free Download
  126. Hacking Tools Download
  127. Hacking Tools For Kali Linux
  128. Wifi Hacker Tools For Windows
  129. Hacker Tools Linux
  130. Pentest Tools For Mac
  131. Pentest Tools Subdomain
  132. Hacking Tools 2020
  133. Pentest Tools Nmap
  134. What Is Hacking Tools
  135. Hacker Tools Github
  136. Hacking Tools Windows 10
  137. Nsa Hack Tools Download
  138. Pentest Tools Free
  139. Pentest Tools Url Fuzzer
  140. What Is Hacking Tools
  141. Hacker Tools Software