8 super heroic Linux commands that you probably aren't using

Поделиться
HTML-код
  • Опубликовано: 17 ноя 2024
  • НаукаНаука

Комментарии • 1,7 тыс.

  • @deineroehre
    @deineroehre 5 лет назад +384

    Finally! A RUclips video with content straight to the point, no useless babble, no unnerving background music.

    • @1pcfred
      @1pcfred 5 лет назад +4

      I was watching a video last night that had good content but before it was done the looping background music caused me to stop it. Half the comments were a complaint about the music too. So it wasn't just me. I'm not saying background music is always bad, but it is not easy to get it right.

    • @saidelbiev5326
      @saidelbiev5326 4 года назад +13

      'Hello my name is XXXX XXXX welcome to my channel. Today I'm going to show you show to XXXX. I hope you like the video. If you do, click the Like and Subscribe button. Well, enough talk, lets dive into it!!
      *** 10 secs of intro music ***
      Do you also have the problem that XXXX? Sometimes you think XXXX and you dont know what to do? There is a way out of this problem!
      *** Actual video content ***
      More or less like that, every damn youtube video.

    • @JohnLovell-FTW
      @JohnLovell-FTW 3 года назад +1

      Amen!

    • @lmnts556
      @lmnts556 3 года назад +2

      This right here is very underrated. Assholes forcing 10 minute videos for ads and just fills them with useless thoughts no one wants to hear or care about.

    • @darylthomas7317
      @darylthomas7317 3 года назад +2

      You guys must be fun at parties :P

  • @AnkhArcRod
    @AnkhArcRod 5 лет назад +573

    I am always doubtful of videos claiming "....you probably aren't using". But, this video did not miss its mark! Thanks for the info.

    • @sirius4k
      @sirius4k 5 лет назад +6

      Most of the "x things you didn't know" videos are shit. Regarding Linux, I know that there way waaaaay more things than 8-9, that I know, so it's safe to check it out. I ended up knowing 1.

    • @dingdong2103
      @dingdong2103 3 года назад

      I use most of those daily. I must be a super hero then...

    • @AnkhArcRod
      @AnkhArcRod 3 года назад +2

      @@dingdong2103 Lol...sure, whatever makes you feel good about yourself!

  • @SriNiVi
    @SriNiVi 5 лет назад +92

    Very precise. No BS introductory talks. Information dense. No interrupts. No distracting elements on the video or the narration. Extremely well made. Love this format of yours. Keep 'em coming.

  • @martinusvanbrederode4080
    @martinusvanbrederode4080 5 лет назад +58

    Alternative to number 5:
    ^abc^abd
    this repeats the last command, replacing abc by abd

    • @mrBrownstoneist
      @mrBrownstoneist 5 лет назад

      gem

    • @chrissmith6028
      @chrissmith6028 4 месяца назад

      I remember finding out about this substitute command. Absolute game changer. from `less somefile.txt` `^less^vim` Now I use it all the time.

  • @raygervais4513
    @raygervais4513 5 лет назад +337

    I normally don't comment, but I have to say just stumbling onto your channel and this video changed the very tone of my night. I went from wanting to relax and be unproductive to wanting to hack away more on a Linux terminal in the late hours and discover more hidden gems. Seriously this is great content I'm sharing with all my coworkers and programmer friends alike.

    • @EngineerMan
      @EngineerMan  5 лет назад +38

      Thanks for the kind words, glad I was able to provide some inspiration :)

  • @aidenlangley6439
    @aidenlangley6439 5 лет назад +279

    Definitely getting a crontab going on my buddy's computer to create 10000 folders every second

    • @justanotheryoutuber739
      @justanotheryoutuber739 5 лет назад +74

      and disown that command with an added sleep so the chaos begins an hour after you leave the laptop

    • @kevinbillingsley8256
      @kevinbillingsley8256 5 лет назад +26

      You could use awk and create the folders plus put a locked file in each one. :)

    • @DaVince21
      @DaVince21 4 года назад +8

      A crontab that runs every second? How does that work?

    • @svampebob007
      @svampebob007 4 года назад +27

      @@DaVince21
      */1 * * * * ( /get/fucked/noob.sh)
      */1 * * * * ( sleep 1 ; /get/fucked/noob.sh)
      */1 * * * * ( sleep 2 ; /get/fucked/noob.sh)
      */1 * * * * ( sleep 3 ; /get/fucked/noob.sh)
      */1 * * * * ( sleep 59 ; /get/fucked/noob.sh)
      sure you'd be executing 60 jobs every minute, but hey it's not your pc :)

    • @AbhishekBM
      @AbhishekBM 4 года назад +29

      After seeing all these comments
      Satan: Just wanna say, huge fan.

  • @tobortine
    @tobortine 6 лет назад +375

    Currently using 0/9 but will use one or two of them in the future. Great format please do more.

    • @mark_pape
      @mark_pape 5 лет назад +2

      tobortine same here

    • @QU3D45
      @QU3D45 5 лет назад +1

      and here...

    • @richtraube2241
      @richtraube2241 5 лет назад

      Same here.

    • @AdamWebbadamwbb
      @AdamWebbadamwbb 5 лет назад +4

      I do alot of linux. I am certified in linix and even these commands escaped me.
      The one that will be most likely used the most would be sudo !!

  • @AlexRamsbey
    @AlexRamsbey 4 года назад +9

    I know this is an older video of yours, but I do like this format and I find it very educational! Thank you for your content.

  • @alherrera9390
    @alherrera9390 5 лет назад +26

    I`ve seen a lot of SSH tunneling tutorials and you, in no time, clearify a lot of stuff in no time. Kudos for that.

    • @ooorkanooo
      @ooorkanooo 5 лет назад +1

      I guess he did it in no time!

  • @HotShotMechPilot
    @HotShotMechPilot 5 лет назад +4

    That disown command is exactly what I needed for a script and could not find the solution anywhere else! Great Work!

  • @chuckn2x
    @chuckn2x 5 лет назад +35

    If you aren't root but need to store stuff in RAM, you can create files in /dev/shm

  • @PeterGalbraith
    @PeterGalbraith 5 лет назад +20

    Been using linux from terminals for 25 years and most were new to me. Awesome!

    • @sysstemlord
      @sysstemlord 4 года назад

      I have been using Linux for about 5 years and I know most of them, what have you been using Linux for? :)

    • @PeterGalbraith
      @PeterGalbraith 4 года назад +3

      @@sysstemlord
      There was no RUclips or even web sites when I started to show you tips.
      🤷

  • @normangeist890
    @normangeist890 5 лет назад +24

    It might be worthwhile to mention that you can control the editor program to use for ctnl+x+e or fc with exporting the environmental variable EDITOR, e.g.: export EDITOR=nano

    • @patrickFREE.
      @patrickFREE. 4 года назад

      bro how it works for arch?

    • @xrafter
      @xrafter 4 года назад +1

      @@patrickFREE.
      The same thing why?
      And this is. Bash variable you may used zsh in arch

    • @brianh.000
      @brianh.000 Год назад +1

      I was looking for this comment. I got an error saying, "emacs: command not found", and assumed there was a default editor set. (I'm a vi user).
      $ EDITOR=vim
      did the trick.

  • @benkramer3194
    @benkramer3194 5 лет назад +192

    Screen instead of disown for unreliable connections :)

    • @farazsaidan
      @farazsaidan 5 лет назад +65

      better even, tmux

    • @armynyus9123
      @armynyus9123 5 лет назад +24

      when you know before that you'll be gone until it finishes - yes. But normally you don't work *always* in screen and friends - then disown is perfect when boss wants unscheduled meeting right now and you need your laptop in the meeting room, i.e. disconnect - but that build is running, having spawned subprocesses ....

    • @benkramer3194
      @benkramer3194 5 лет назад +10

      @@armynyus9123 unreliable connections, not unreliable bosses :)

    • @wiredrat1
      @wiredrat1 5 лет назад +4

      @@farazsaidan you can upgrade to byobu

    • @senantiasa
      @senantiasa 5 лет назад +6

      I use tmux on commonly used systems, but there have been times where I touch systems I don't own/maintain and I think this command could be useful (just found out about it).

  • @Andrath
    @Andrath 5 лет назад +30

    Reverse a file, handy for last/lastcomm: tac (cat in reverse)

  • @SalmanEstyak
    @SalmanEstyak 2 года назад +1

    Thanks for this. The use case for "disown" reminded me of another useful command that is the "screen" command, which allows us to have multiple sessions using the same terminal. We can get in a session, start some code, get out and things will run in background; and later, we can resume the session.

  • @marloelefant7500
    @marloelefant7500 5 лет назад +4

    8:11 I'd recommend a terminal multiplexer such as gnu screen or tmux for such use-cases. Not only will it continue running all your processes when you detatch (or the connection fails), but when you come back, you will see everything the same way as you left it (if you didn't restart the machine). Moreover, it allows you to have multiple screens and multiple sessions in only one window. It's an incredibly useful tool especially for ssh connections.

    • @smichaud7
      @smichaud7 5 лет назад

      I wanted to give the same comment. Tmux is very useful.

  • @robinhahn6987
    @robinhahn6987 5 лет назад

    This is about the best video *ever* on the premise "Commands you probably aren't using" - totally taking notes and will be invoking these, most DEFINITELY!

  • @HoldFastFilms
    @HoldFastFilms 6 лет назад +190

    sudo bang bang

    • @yegorpl9973
      @yegorpl9973 5 лет назад +2

      Bang батя в здании

    • @Crux161
      @Crux161 5 лет назад +26

      HOLD FAST he shot me down, sudo bang bang - my terminal shot me - down. 😂

    • @HighestRank
      @HighestRank 5 лет назад +4

      Bad system call

    • @son_go_ma
      @son_go_ma 5 лет назад +44

      I was Linux, he a -nix
      We root systems made of X
      He wore Spark, and I wore ARM
      He would always win the stack
      Bang bang
      I shut him down
      Bang bang
      He bit the Grub
      Bang bang
      Systemd shut us down

    • @KaplaBen
      @KaplaBen 5 лет назад +4

      sudo gang bang. Oops I made a typo

  • @tutao2008
    @tutao2008 5 лет назад

    Dude that’s great, I’m an old man restarting on Linux world and loads to learn, bg, exit from terminal and leave running I’ve tried the rest just saw it briefly. Tks dude and the format is really good, doesn’t cover the screen and ur presence doesn’t cause any inconvenience at all. Congrats man 👏🏼👏🏼👏🏼

  • @joshharding6925
    @joshharding6925 5 лет назад +3

    Got to admit, most of these commands I didn't know about and I've been using Linux for over 20 years! Subscribed! Can't wait for the next RUclips installment

  • @MathiasHomann
    @MathiasHomann 5 лет назад +9

    Like he says at the start... you can be using linux for 25 years and still learn something. 1, 2, 5, and the bonus trick were totally new for me.

  • @mau5che
    @mau5che 5 лет назад +392

    here's a command many people probably don't use:
    man bash

    • @james_gemma
      @james_gemma 5 лет назад +12

      lol

    • @AliasdHacker
      @AliasdHacker 5 лет назад +29

      ​@@james_gemma​ Is that a command to make a man bash something?

    • @MrFace
      @MrFace 5 лет назад +28

      feminist flavor of *nix

    • @james_gemma
      @james_gemma 5 лет назад +34

      @@MrFace Feminist only use SystemVag or SystemV for short. Others use SystemDick or SystemD

    • @seanshuping
      @seanshuping 5 лет назад +19

      man mount... If you're into that sort of thing 😁

  • @bruceleealmighty
    @bruceleealmighty 3 года назад +1

    I'm absolutely loving your unobtrusive PnP with no frame. I've only used one of these commands on a regular basis. Thanks for the tutorial.

  • @JamieBainbridge
    @JamieBainbridge 5 лет назад +15

    Add "conv=fsync" to your dd command, which flushes pages to disk after dd has finished writing. Otherwise you're writing to pagecache (which is RAM anyway) and will get imprecise results.

  • @deleatur
    @deleatur 5 лет назад +1

    Well, these are not commands but are useful tips:
    1) Ctrl+t, if you need to swap last two typed letters, i.e. "daet"->"date"
    2) To correct a mistyped executed last command without rewriting, i.e. you typed
    "daet" and pressed enter. You can fix it this way: ^et^te, press enter
    and see the results (obviously this suits better with long commands).
    In short: ^(wrong)^(right)
    Just for clarity, one more example: You executed "sotr". You fix it executing ^tr^rt.

  • @GRBtutorials
    @GRBtutorials 5 лет назад +136

    You forgot to mention that the !! trick works with any command, not just sudo.

    • @frannelk
      @frannelk 5 лет назад

      True 👏🏼👏🏼👏🏼

    • @cartersherman925
      @cartersherman925 5 лет назад +4

      Does it just run the previous line with whatever is typed before !! ?

    • @cll1out
      @cll1out 5 лет назад +14

      Also saves in bash history in expanded form so when you use the up arrow for recent commands it doesn’t say “Sudo !!” like you actually typed it it shows the whole effective command.

    • @nachiketagrawal5154
      @nachiketagrawal5154 4 года назад +8

      @@cartersherman925 !! just basically replaces itself with previous command. Example if you typed ls as first command, then you can do the following: sudo !! -al to do sudo ls -al

    • @____-gy5mq
      @____-gy5mq 4 года назад

      !-1 !-2

  • @lawrencedoliveiro9104
    @lawrencedoliveiro9104 3 года назад +1

    2:50 This is controlled by the HISTCONTROL variable in Bash. You have options to ignore commands with leading blanks, ignore duplicates, and even erase duplicates before inserting a new entry. There is also HISTIGNORE for more fine-grained control of which commands go into the history list.

  • @DanDanciu13
    @DanDanciu13 6 лет назад +61

    You used bg. Why not include it in the list? I doubt there are many people that use that too.

    • @nilsirl
      @nilsirl 6 лет назад +18

      yeah, This is the most useful command I learned by watching this video.

    • @wulymammoth
      @wulymammoth 6 лет назад +18

      It it then necessary to share the rest of the useful commands:
      - suspend the current process (I use this to suspend Vim to run tests in the same window): ctrl+z
      - list processes: jobs
      - foreground one of the options listed in jobs: %
      - foreground the most recently suspended process: fg
      EDIT: 12/23/18 - change background to suspend

    • @tekvax01
      @tekvax01 5 лет назад +14

      you can also put a & at the end of the line to place the command in the background and not use ctrl Z ie sleep 120 &

    • @SeverityOne
      @SeverityOne 5 лет назад +6

      @@wulymammoth You don't :put it in the background", you suspend it with Ctrl+Z. To put it in the background, that's what bg is for.

    • @wulymammoth
      @wulymammoth 5 лет назад +2

      @@SeverityOne you're right! Gotta use bg for that. corrected :)

  • @AstroDenny
    @AstroDenny 3 года назад

    Great video. Hands-down helpful with no stupid click-bait title! Love that. I also love that there are dozens of other helpful commands in the comments!

  • @yrussq
    @yrussq 5 лет назад +6

    Short, straight to the point, useful. Brilliant!

  • @EdnovStormbrewer
    @EdnovStormbrewer 3 года назад

    Been a linux user since 2012 and taught myself how ls -l works. Very useful and handy command. So glad to see that this is being spoken out and recommended by an engineer along side of other commands I never heard of.

  • @theboogymaster
    @theboogymaster 5 лет назад +15

    For the last one with disown personally I use tmux or screen this way you can still re attach and have input output available for the command. Nice commands even though I use them all keep up the good work 👍

  • @jasong2269
    @jasong2269 5 лет назад +3

    love this format. also, i didn’t know about hitting space before a command or about fc. awesome.

  • @skaltura
    @skaltura 5 лет назад +7

    You do not need to create a ramdisk under linux, just use /dev/shm directly. Fully POSIX compliant, you will not know the difference from a regular Ext4 FS.
    In essence mount -t tmpfs tmpfs works pretty much like mount -o bind :)

    • @MichaelMantion
      @MichaelMantion 5 лет назад

      you lost me. does the folder /dev/shm automatically run on ram or something?

    • @skaltura
      @skaltura 5 лет назад

      @@MichaelMantion Yes. SHM stands for SHared Memory. www.cyberciti.biz/tips/what-is-devshm-and-its-practical-usage.html
      THO! Unlike on that page, i don't think you need to mount it specifically, i cannot recall ever doing that.

    • @skaltura
      @skaltura 5 лет назад +1

      @@MichaelMantion Checked, Ubuntu based distros auto mount it by default, but i recall years ago using on Debian we didn't even mount it and it was available as it is a device. Might be that the mounting thing is more of convenience type of thing (easy clearing and assurance to end user)

    • @lylestavast7652
      @lylestavast7652 5 лет назад

      @@skaltura kernel configurable. You're eating your system semiconductor ram to use it, so if you're on a low memory system compared to useage needs - you might consider a disk based option ...

    • @jamestanis3274
      @jamestanis3274 5 лет назад

      This is true for linux, but what abut Solaris, or HP(s)UX (do hey still exist) or any of the other unixen out there? Do the embedded unixen all have /dev/shm? It's worth understanding what's going on. Besides I believe the /dev/shm is often just the result of an fstab entry, so it's really just the same thing as what the presenter said.

  • @fiddlermikey
    @fiddlermikey 5 лет назад +2

    I have used 2 of these regularly (#3 and #8) when creating automation build scripts. I was always trying to speed up portions of the build and would try to farm out disk-intensive tasks to virtual RAM disks whenever possible. Being able to partition output from different parts of the build to different logs would not have been possible without the tee command. I plan to try to use more of these techniques.

  • @divine_swine9665
    @divine_swine9665 6 лет назад +33

    Awesome format. I’m not new to terminal commands, but I’m now to the Linux distros. Im enjoying them. Good stuff
    Edit: My comment doesn’t make sense. I’m now to Linux, but not new to using terminals.
    Edit #2: editing for *1st Edit:* comment: *new* to Linux...

    • @bakedutah8411
      @bakedutah8411 5 лет назад +2

      [YT Comment Linter v3.4] ERROR 23, Line #6: Too many colons.
      [YT Comment Linter v3.4] WARN 12, Line #6: Too much gibberish.

    • @dushk0
      @dushk0 5 лет назад +1

      Just edit the comment, dude!

    • @noweare1
      @noweare1 5 лет назад

      Give it up : )

  • @LinuxLuddite
    @LinuxLuddite 3 года назад

    Great video , just to add one minor details :
    The ctrl+xe is a feature of the readline library used by the bash shell and so works only on bash shell. Other shells like zsh do have an edit-command-line wigdet but you need to configure in your .zsh .
    # Enable Ctrl-x-e to edit command line
    autoload -U edit-command-line
    # Emacs style
    zle -N edit-command-line
    bindkey '^xe' edit-command-line
    bindkey '^x^e' edit-command-line
    # Vi style:
    # zle -N edit-command-line
    # bindkey -M vicmd v edit-command-line

  • @crimsontorso4126
    @crimsontorso4126 6 лет назад +537

    Video starts at 0:00
    Thank me later

    • @vibheeshavelayudha1903
      @vibheeshavelayudha1903 6 лет назад +60

      Video ends at 8:37
      Fuck me later

    • @ShivamJha00
      @ShivamJha00 5 лет назад +3

      Hahaha

    • @MichaelMantion
      @MichaelMantion 5 лет назад

      HA

    • @shikhanshu
      @shikhanshu 5 лет назад +4

      this is very helpful... i will thank you right away

    • @HighestRank
      @HighestRank 5 лет назад +1

      Kai West don’t thank me but my video starts at 0:31 and the previous video ends at 0:00, leaving 0:30 for a commercial.

  • @bpoole007
    @bpoole007 3 года назад +1

    I’ve been using Linux professionally for a long time and never knew about Ctrl+x+e and fc. the rest I use pretty often, so thanks for helping out

  • @linuxgaminginfullhd60fps10
    @linuxgaminginfullhd60fps10 5 лет назад +9

    You already have /dev/shm mounted by default to store things and files in memory.

    • @jamestanis3274
      @jamestanis3274 5 лет назад +1

      In Linux sure. On other unixen too? Anyhow, I'm also wary that I will fill up /dev/shm and forget, thus causing the machine to start to thrash. SSD are a better answer -- and not that expensive.

  • @nickwinn
    @nickwinn 5 лет назад +1

    Been a Linux guy for 20 years, this is a good video that covers some good basic things. I would suggest covering basic output redirection, tmux, Ctrl+r bash command, lspci and package management hacks.

    • @thatoneuser8600
      @thatoneuser8600 3 года назад

      I thought ctrl + r is an emacs command? It's backwards i-searching

  • @ItsMeooooooo
    @ItsMeooooooo 5 лет назад +9

    for history ignoring lines with whitespaces you need 'HISTCONTROL=ignoreboth' to be set

    • @poe12
      @poe12 5 лет назад

      If you want to not show your ascii art in the history, vi :sh

    • @kingneutron1
      @kingneutron1 5 лет назад

      Thanks for that! You shouldn't rely on the "leading space" method tho, if you want to guarantee commands don't make it into history you can always ' unset HISTFILE '

  • @juanpabloamorochod.752
    @juanpabloamorochod.752 5 лет назад

    1st time viewer! Nice video! I've used 5of9 of the commands. Those fc and disown are new to me and are pure gold! Thanks for that. If anyone is interested: More info on those two commands can be found with $help fc or $help disown where $ is means the prompt.

  • @Andrath
    @Andrath 5 лет назад +219

    For people using real editors (vim), if you need to write a file with sudo:
    :w !sudo tee %

    • @ibjacked
      @ibjacked 5 лет назад +3

      Cool, that's a good one, thanks!

    • @tetrahedrontri
      @tetrahedrontri 5 лет назад +2

      Jesus thank you.

    • @markus-hermannkoch1740
      @markus-hermannkoch1740 5 лет назад +6

      Ah, Vim :-). Attempting to understand your example: User finds ':w' won't work. Permission denied. Instead pipe all the editor's content into 'sudo tee %' (the '!' executes a shell command). That will overwrite the currently open file since '%' in that command line context will be replaced by the current file name. At least this feels sensible.

    • @kevinbillingsley8256
      @kevinbillingsley8256 5 лет назад +45

      People who use _real_ editors tend to be _real_ arrogant jackasses.

    • @markus-hermannkoch1740
      @markus-hermannkoch1740 5 лет назад +4

      @@kevinbillingsley8256 , vim has a certain learning curve. Once a certain point is passed it proves to become quite the swiss army knife and very versatile. Myself, I am using it for about 20 years now virtually every day at work, am happy, and sometimes enjoying the text-adventure that also is vim. Recommend vim to fellow nerds (e.g., people watching videos like this one). Just do not badger the non-IT people and you are socially fine. Btw. nothing against nano. IMHO any Linux fanboy ought to bring nano basics if only for the fact that it seems to replace vim as the default onboard command line editor. Meaning, a fresh Linux will probably already have nano available where vim still would need being installed.

  • @bur2000
    @bur2000 3 года назад

    Usually these lists consist of 75 % stuff like "ls -l" and take 62 minutes to come to the point. All these commands I didn't know of and it was quick and to the point. Thanks.

  • @kirkanos771
    @kirkanos771 5 лет назад +10

    the space character to avoid history doesnt work on most of latest linux distrib. the command with the space is stored in the history aswell.

    • @techworld7716
      @techworld7716 5 лет назад

      I agree. I tried it on Centos7 and it didn't work.

    • @lazarborisov3664
      @lazarborisov3664 5 лет назад +5

      try HISTCONTROL="ignorespace" and then a command with a space

    • @jakistam1000
      @jakistam1000 5 лет назад

      I tried it on Mint 19 without changing any settings and it works

    • @KanishkkaKeshav
      @KanishkkaKeshav 5 лет назад

      there is a specific word that needs to be added to your .bashrc only then it would work ---- never by default.

    • @jakistam1000
      @jakistam1000 5 лет назад

      @@KanishkkaKeshav I've found it - HISTCONTROL=ignoreboth. However, it was this way by default.

  • @1947wdx
    @1947wdx 5 лет назад +2

    It should be noted that these are not Linux commands. They are BASH commands. There are other shells out there with similar shortcuts. (tcsh, ksh, zsh, etc...) Most of the above I have used at one point or another. Take a look at the man page for bash to find out the various default key bindings, and how to add your own. (Or better yet, check out tcsh.)

  • @sethbrown1763
    @sethbrown1763 6 лет назад +41

    I didn't know about "disown". I'd use "screen" for this purpose since it allows re-connecting to a running shell later.
    I don't use "fc" since I have "set -o vi" set in my shell, so Esc, v does the same thing.
    I've never had need to use a RAM disk (other than the initrd). What's your use case for RAM disks from the command line?
    Thank you for this video. I think it's a good idea to find obscure & useful commands that get forgotten over time.

    • @brymstoner
      @brymstoner 5 лет назад +5

      I use Byobu. Makes maintaining my servers a dream.

    • @miguelandrade5964
      @miguelandrade5964 5 лет назад +7

      Ramdisks can be useful in some (but not very frequent) workflows. Example: ETL Extract Transform Load. Extract to Ramdisk, do whatever you must do, load from ramdisk. If the transformation part is long you'll start loving Ramdisks .

    • @celivalg
      @celivalg 5 лет назад +1

      When I did some data manipulation for deep learning, I had to transform my data set into something more sensible to be used for training, did a small python script for it, but due to the amount of data, it took a few minutes to run, this could have helped me reduce the time by a lot.. I could also have reduced the complexity of the script but not without a few hours of work, so not worth it

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 5 лет назад +3

      screen is very useful. It is also what I would probably use to perform multiple tasks or time-consuming tasks on a remote machine.

    • @celivalg
      @celivalg 5 лет назад

      Lawrence D’Oliveiro I don’t use it a lot since I don’t work that much with remote machines and I got I3... I know there are some other features that screen has but i3 doesn’t but I still prefer using i3 over screen for tiling terminals...

  • @DogAndLinuxLover
    @DogAndLinuxLover 5 лет назад +2

    Great video. To the point and super informative. I'll probably use at least half of these moving forward. The only one I knew was the creation of folders using the curly braces...
    Please do more! And thank you!

  • @chlordk
    @chlordk 5 лет назад +4

    When new to the curly bracket stuff, debug by prefix it with "echo". Try:
    echo mkdir -p folder/{sub1,sub2}/{sub3,sub4}

  • @davidh.4944
    @davidh.4944 3 года назад

    #1) This is simply your shell's built-in history substitution function, and it's always among the first things I disable ("set +H" in bash), because it makes typing anything with "!" in it an incredible PITA. You have to backslash-escape the ! _every time it appears_ (it ignores quoting), or else it will simply shove the previous command right inside your current one.
    It's not really any harder just to up-arrow to the last command and hotkey jump to the start of the line. It's also easy to use +r,+s> history search for older commands (made even easier with the fzf plugin). That's just my personal preference, however.
    See the HISTORY CONTROL section of the bash manpage for details on manipulating your history.
    #2) In bash, this is the emacs-style keybinding. With vi-mode enabled (set -o vi), the key is 'esc+v' (esc to get into normal mode, a-la vim). The shell will use the value of the $EDITOR environment variable as the editor to use.
    #4) In bash, this behavior is controlled by the HISTCONTROL variable. With the value "ignorespace" it acts as described in the video. I also add "erasedups" to mine, which makes it remove all older copies of the command, and only the newest one remains. "ignoredups", the last option for this variable, is basically the opposite of erasedupes; it will not add a command to history if it already exists, so that you keep the oldest entry.
    You can also set globbing patterns in the HISTIGNORE variable, and it will not add anything that matches those patterns, good for commonly used commands like "ls" that you don't want cluttering up your history. See the "Shell Variables" section in the bash manpage for details.
    #5) This is essentially the same as "up arrow + #2". fc is a shell builtin command for accessing and controlling your history list. Type "help fc" in bash or find its description in the manpage.
    I also highly recommend setting the histreedit shell option, so that it puts your chosen history command back on the readline for editing, making you less likely to mistakenly re-run an old command (e.g. "rm -rf *") as-is.
    Again, I also use vi-mode, which offers a lot of the same movement and editing commands as used in vim (jumping between words, etc), making it easy to do fairly complex editing on the command line (not that the default emacs-mode is any less capable, but I find the workflow and the hotkey bindings to be less intuitive).
    #7) Brace expansion is very convenient, especially for creating numbered lists of things. I just want to caution that you should keep its usage separate from that of globbing ([^]*?) patterns. While globbing only _matches_ files or text strings that already exist, braces _generate_ (expand into) lists of strings before executing the command. e.g. "ls [fgh]oobar" will list out the files "foobar" and "hoobar" that exist in the directory, and ignore "goobar", which doesn't. On the other hand, "ls {f..h}oobar" will expand and execute the command "ls foobar goobar hoobar", resulting in a "no such file" error message on "goobar".
    Note also that numbers can be zero-padded, and negative and descending range lists also work. They can also be combined and nested (e.g. "echo foo{{1..5},{a..e}}bar").
    Finally, also be aware that brace expansion happens _before_ variable (and other parameter) expansions, so actions like "a=1 ;z=10; echo {$a..$z}" do not work as you would expect.
    #8) That's a bit of a confusing explanation for tee. What tee does is fork its input into two parallel outputs, one channeled into a file, and one going to stdout. This allows you to monitor, duplicate, or redirect the output from the middle of a chain of commands without interrupting its operation. "info tee" will give you a detailed description.
    #9) disown doesn't have to be used only when exiting. You can "remove" an unwanted process from the shell at any time. A common pattern is to "" to suspend a running foreground process, then "bg" to resume it as a background process, then "disown" to fork it away from the current terminal. Note that it's impossible to get it back again once disowned. You can only terminate it or send it other control signals (with the "kill" command or similar). Re the "JOB CONTROL" section of the bash manpage for details. Some people recommend the use of screen or similar multi-terminal applications for better background process management.

  • @lawrencedoliveiro9104
    @lawrencedoliveiro9104 5 лет назад +6

    Here’s another one: “mmv” to do bulk renames of files, e.g.
    mmv «old-pre»\*«old-post» «new-pre»\#1«new-post»
    will rename all files with names beginning with «old-pre» and ending with «old-post» so they begin with «new-pre» and end with «new-post», keeping the part in the middle the same.
    This command can be quite dangerous if you get it wrong. So if you try it first with “mmv -n”, it will tell you what it would do without doing it. Then when you are sure you’ve got the patterns right, change the “-n” to “-v”, and it will go ahead and do it, and report what it has done as it goes.

  • @sagarsutar7318
    @sagarsutar7318 5 лет назад

    Amazing! That Folder command was mind blowing! I started to learn Linux a few week back and also am encouraging First year graduates to learn Linux too!! Will share this video later on with them!

  • @nathanlewis42
    @nathanlewis42 5 лет назад +5

    I always used nohup to keep processes from being killed. Good to know there’s another way.

  • @DraganovDesigns
    @DraganovDesigns 4 года назад +1

    Loved the video format! I learned a lot about issues I have been having and clearly didn’t know the solution to them. Thanks. Keep up the good work!

  • @vibheeshavelayudha1903
    @vibheeshavelayudha1903 6 лет назад +6

    Woah this was super useful.... thanks a lot.... need a part 2 of this

  • @redamastouri
    @redamastouri 5 лет назад +1

    We need more of this commands, they’re extremely helpful to my task I’m doing. Thanks for the video

  • @BR-lx7py
    @BR-lx7py 5 лет назад +4

    The "space trick" to exclude a command from history does not work in bash 4.4.19, at least on a Mac.

    • @charleysheets8142
      @charleysheets8142 5 лет назад +1

      Balazs Rau there’s a bash variable called HISTIGNORE that has to be set properly for that trick to work.

  • @roysigurdkarlsbakk3842
    @roysigurdkarlsbakk3842 5 лет назад

    I didn't know ctrl+x+e or fc - nice
    But then again - if running bash and tying 'set -o vi', you turn bash into vi mode, meaning ctrl+x+e is simply kv (or just v to access the editor from command mode). fc works well with vi too last I tried - I guess it just uses EDITOR or whatever's the default on your system. The rest was well known stuff.

  • @bruhdabones
    @bruhdabones 5 лет назад +16

    [up arrow key] + [home key] and then you type “sudo”. EASY!

    • @love-hammer
      @love-hammer 5 лет назад

      Thank you! So many commenters here need to learn how to use their keyboard first, apparently. It's also safer because you always know what you're running as root instead "what ever the last thing I said because there are no consequences to my commands." Might as well use "sudo -s".

    • @maramauu
      @maramauu 5 лет назад +1

      You have to strike 7 keys, sudo!! Only 6 :-P

    • @MichaelMantion
      @MichaelMantion 5 лет назад +1

      except my laptop doesn't have a dedicated home key so i have to do a FN home.. Easier to just do sudo !!.

    • @Zestysoft
      @Zestysoft 5 лет назад +3

      @SaltyBrains Using Putty (Windows), when I CTRL+A I get ^A. When I try the home key, it capitalizes the previous character. This is using the bash shell in Fedora 27. sudo !! works without dealing with this crap and I'm not a fish -- I can remember the last command I just typed.

    • @F3Ibane
      @F3Ibane 5 лет назад

      @SaltyBrains get on that tmux game and embrace ctrl+b

  • @WyeOakMobileDeviceRepairEaston
    @WyeOakMobileDeviceRepairEaston 5 лет назад +1

    Wow. I’ve been using Linux since RedHat 4 and I can honestly say that I have only ever heard of two of those juicy tidbits. Thanks! All of them were extremely helpful and I’ll be incorporating them in my day to day now.

  • @KevRunsOnDunkin
    @KevRunsOnDunkin 6 лет назад +12

    This video is life changing

  •  5 лет назад

    I scored 3/8.. One thing that changed my life when I learned about was No.1 in this video, along with the complementary "!$" (without quote marks), which is the last argument in the last command. "!!" points to the whole last command given, while "!$" is the last argument in that command... (All without the quotation marks).

  • @dvo66
    @dvo66 5 лет назад +3

    2:39 Hackerman Intensifies

  • @jimdaniels4595
    @jimdaniels4595 5 лет назад

    Right away using 3-4. This is a life saver for anyone who regularly builds from sources and/or doesn't necessarily use any ide

  • @chaturvedikuldeep
    @chaturvedikuldeep 5 лет назад +6

    Currently using 8 of 9, disown is the new command I have to own. Thanks for this interesting post.

  • @AlanDarkworld
    @AlanDarkworld 3 года назад

    Gotta mention "autojump". This nifty utility command tracks your directory history, so you can jump to any folder you've been before, simply by typing its name (rather than the whole path). Must have saved me days by now.

  • @handsomepixel5193
    @handsomepixel5193 6 лет назад +5

    I know this is meant for Linux, but that "sudo !!" command also works on mac!
    I didn't even know something like that existed!
    The amount of times I've run commands, only to forget that they require root, is more than the grains of rice I've ate in my life.

    • @samuelhackson828
      @samuelhackson828 6 лет назад +4

      Most, if not all of the commands will work on Mac OSX because it uses the same shells that you can run on Linux. It‘s bash by default.

    • @flanadu
      @flanadu 6 лет назад

      !! is a bash operator. I believe bash is the default shell on macos.

    • @handsomepixel5193
      @handsomepixel5193 6 лет назад +2

      @@flanadu It is, it's just that I didn't find out about these commands before, and some commands require installing packages on macOS using brew, which is why things like this surprise me since I didn't need to install anything beforehand.
      I've changed my default shell to zsh, no difference in commands whatsoever, I just like the sub string search functionality :)

    • @flanadu
      @flanadu 6 лет назад

      @@handsomepixel5193 I also use zsh as my shell on both macos and linux. You should checkout oh-my-zsh if you're a zsh fan. github.com/robbyrussell/oh-my-zsh

    • @handsomepixel5193
      @handsomepixel5193 6 лет назад

      @@flanadu I've used oh-my-zsh before, but it was too much "zsh power" for me too handle.
      The plugins were nice, but I wanted a simpler and faster setup, so I instead downloaded the individual plugins myself and auto-source them through my .zshrc
      I use zsh-syntax-highlighting and zsh-async-git-prompt, and I consider that enough for now.

  • @noahwilliams8918
    @noahwilliams8918 4 года назад

    Just re-watched this video two years after watching it first. Incredibly helpful - thank you!

  • @LinuxPlayer9
    @LinuxPlayer9 5 лет назад +5

    This is amazing I am so impressed by the power of Linux

  • @ShaiLevit
    @ShaiLevit 5 лет назад +1

    Great video format, good explanation, not too fast or overwhelming. One small request - screen could be a little bigger (zoomed).

  • @LarsHolmVV46
    @LarsHolmVV46 5 лет назад +3

    Great video - nice fast speaking tempo. I knew only 3 and I gotta try the sudo !! Damn...

    • @philipnelson5
      @philipnelson5 5 лет назад

      I add this alias to my bashrc
      alias pls='sudo $(fc -ln -1)'
      Then when I need to re-run a command as root I just need to ask nicely ;)

    • @LarsHolmVV46
      @LarsHolmVV46 5 лет назад

      Yeah, Thats Korn Shell syntax, adapted by Bash. I Think the variable LINENO -eq the number of last command executed.

  • @losokos
    @losokos 3 года назад +1

    Yo, that CTRL x + e shortcut feels like such a flex to know, thx

  • @circli
    @circli 6 лет назад +12

    Yes! More amazing videos! Keep it up. :)

  • @lawrencedoliveiro9104
    @lawrencedoliveiro9104 5 лет назад

    4:32 Couple more things worth clarifying about this command: 127.0.0.1 is the loopback address, so you can have services listening on this address without exposing themselves to the outside world. Also the “-N” option causes ssh to make the connection without doing anything else, like displaying a shell prompt. Instead of backgrounding it with CTRL/Z and then “bg”, you could have just stuck a “&” on the end of the command.

  • @JasonFavrod1
    @JasonFavrod1 5 лет назад +3

    sudo !! : I use
    ctrl+x+e : I didn't know about, will probably use
    ramdisk : I didn't know about, will may use if the situation arises, good to know about
    no history : I use
    fc : I didn't know about, will probably use
    ssh -L : use regularly
    bash curly brace sets : I use
    tee : I remember it now that you show it. Will probably use.
    disown : good bonus, saved the best (for me) for last
    Cheers!

  • @rafnicdao9283
    @rafnicdao9283 5 лет назад +2

    Before watching this vid, this is what I'd do:
    1) (vi-mode) k I sudo
    2) (vi-mode) v
    5) (vi mode) v
    6) Is this any different from port-forwarding?

  • @gonkween
    @gonkween 5 лет назад +5

    i'm a linux super linux noob so i'm hyped that i knew one or two of these already. sudo bang bang FTW

  • @JH-no8sy
    @JH-no8sy 5 лет назад

    I'm not a programmer or engineer, and I'm new to the IT field, but I find your videos super informative. Just wanted to say thanks for helping me get more familiar with Linux.

  • @chrisshyi8999
    @chrisshyi8999 5 лет назад +4

    I learned so much, thanks for sharing!

  • @azenpunk
    @azenpunk 5 лет назад

    This is the quickest I've ever subbed to a channel. One video and done. Thank you, sir. These will be super helpful.

    • @EngineerMan
      @EngineerMan  5 лет назад

      Welcome! Glad you enjoyed the video!

  • @davidhernandeze
    @davidhernandeze 5 лет назад +24

    1:20 lol I always try to hide my own nudes folder

    • @benjaminforest1176
      @benjaminforest1176 3 года назад

      maybe it was nodes, like server nodes :DD not nudes :DDD

  • @ekkehardehrenstein180
    @ekkehardehrenstein180 5 лет назад +1

    Dude, im super excited for this video. I understood everything but have no practice using linux. Normally I get over explabored but you hit the mark with the pace and interesting content.

  • @mladenkorunoski654
    @mladenkorunoski654 5 лет назад +3

    The two most helpful commands for me currently are:
    1. cd -
    2. ( )

    • @seanshuping
      @seanshuping 5 лет назад

      cd - is one of my favorites.
      followed closely by reverse search ctrl + r

    • @emberleona9278
      @emberleona9278 5 лет назад

      @@seanshuping rm basename and rm dirname destroyed my distro... i want to replace with zenity xdg-open.

  •  3 года назад +1

    You can also type Ctrl+X+E when you have a long command in terminal. It will also open the editor to edit the long command, like fc.

  • @sufiyanadhikari8716
    @sufiyanadhikari8716 6 лет назад +4

    For the last one, I personally prefer tmux.

  • @Mitsarolas
    @Mitsarolas 4 года назад

    "disown -a && exit" saved my day, Engineer Man
    you are the best

  • @Uneke
    @Uneke 5 лет назад +5

    Terminals best friend “Tab” 😉

    • @johnwythe1409
      @johnwythe1409 3 года назад +1

      Oh yeah, love tab when typing long file names or can’t remember how to spell something. Works at a CMD prompt on that other OS that should not be named. Lol. Slightly different though, sequences through all files that match. Use tab in vi on command line as well to fill out a file name.

    • @Uneke
      @Uneke 3 года назад

      @@johnwythe1409 right!? Oh and the other OS’s name is Linux’s challenged stepbrother 😂

    • @johnwythe1409
      @johnwythe1409 3 года назад +1

      @@Uneke I meant love it on Linux. Just happened to note what it does under the cmd prompt. I thought since this seems to be a Linux video, I thought I would make a joke vis a vie Voldemort/ Windows.

  • @justinyarbrough1645
    @justinyarbrough1645 5 лет назад

    I've used #1, #6, and #7 for a long time, but the ramdisk thing is pretty sweet! Also was totally unaware of the disown command. Bravo sir

  • @SeverityOne
    @SeverityOne 5 лет назад +56

    Why on earth are you piping into cat?

    • @rosangelaserra4552
      @rosangelaserra4552 5 лет назад +64

      Damn furries everywhere

    • @SeverityOne
      @SeverityOne 5 лет назад +9

      ​@@rosangelaserra4552 In hindsight, perhaps I should have phrased that differently. 🙂

    • @F3Ibane
      @F3Ibane 5 лет назад +14

      Either it's an in-joke for the "useless use of cat" crowd, or maybe it's because it's just a demonstration you silly pedant. 🐱

    • @monday6740
      @monday6740 5 лет назад +2

      The entire command is weird ... why would someone TEE a static file ? Either something other is going on, or it is a very bad example

    • @karoshi2
      @karoshi2 5 лет назад +4

      @@monday6740 the static input seems like an example to me, guess examples are fine. Personally I find
      | cat > /dev/null
      much worse. 😱

  • @NomadicDmitry
    @NomadicDmitry 4 года назад

    Nice, thank you! I especially liked the command "disown". Didn't knew about it at all.

  • @F3553ify
    @F3553ify 5 лет назад +3

    If you use vim then you can do ":w ! sudo tee %" then you can save the file as root without opening the file as root.

  • @cyrustakem7993
    @cyrustakem7993 5 лет назад +1

    I knew none of these, but started using a couple of them after seeing this video, and they are very usefull in my work life.
    Thanks

  • @gameglitcher
    @gameglitcher 5 лет назад +4

    Ctrl x+e
    bash: emacs: command not found...
    yum install emacs
    This command has to be run under the root user..
    sudo !!
    win.

    • @ericlecat6441
      @ericlecat6441 5 лет назад

      You may export the EDITOR environement variable to use any editor instead of emacs
      echo 'export EDITOR=nano' > ~/.bashrc && source ~/.bashrc and then Ctrl x+e will launch nano

    • @patrickFREE.
      @patrickFREE. 4 года назад

      @@ericlecat6441 thanks bro

  • @ThorstenStaerk
    @ThorstenStaerk 3 года назад +1

    After 20 years of practicing Linux in Enterprises and on the desktop I knew only 5 of the 8+1... the ramdisk, the space (to avoid history), the ssh tunnel, tee and disown. Thanks for the hints :)

  • @rodionvasiljev3020
    @rodionvasiljev3020 5 лет назад +5

    I would add: set -o vi

    • @jamestanis3274
      @jamestanis3274 5 лет назад

      or set -o emacs, depending on who you are.

  • @Danny-we4vz
    @Danny-we4vz 5 лет назад +1

    nohup is defined by POSIX whiledisown is not. This means that while many shells (e.g. bash , zsh , ksh ) have it, others (for example tcsh , csh , dash and sh ) won't have it.

  • @gdevelek
    @gdevelek 5 лет назад +5

    Your explanation for the SSH tunnel was terrible.

    • @loeken
      @loeken 5 лет назад +6

      still better than yours

  • @BuildingCenter
    @BuildingCenter 4 года назад

    Bruh. This is a great way to rep Linux! Well done. It’s full of obscure (to me) and useful (to a bunch of folks) commands, it’s funny, and it seems shorter than it is. Right on. Thanks for your work.
    Also, you could show some Windows users and they’d think, “Hmm, that’s handy.”