| 00:19:40 | | iseaup quits [Remote host closed the connection] |
| 00:48:45 | | iseaup (iseaup) joins |
| 01:39:59 | | retrograde quits [Remote host closed the connection] |
| 01:40:47 | | retrograde (retrograde) joins |
| 02:01:39 | <klea> | nicolas17: Instead of implementing it in each AB pipeline, we can have all AB pipelines proxy all their requests trough a cenralized system which would sign http/s queries /shitpost. |
| 02:35:15 | | DogsRNice joins |
| 02:56:32 | <nulldata> | https://daniel.haxx.se/blog/2026/03/21/bye-bye-rtmp/ |
| 03:02:05 | | retrograde quits [Remote host closed the connection] |
| 03:02:29 | | retrograde (retrograde) joins |
| 03:05:30 | | iseaup quits [Ping timeout: 240 seconds] |
| 03:12:39 | | DrowsyCrow quits [Quit: Ooops, wrong browser tab.] |
| 03:36:24 | | Lord_Nightmare quits [Quit: ZNC - http://znc.in] |
| 03:39:47 | | Lord_Nightmare (Lord_Nightmare) joins |
| 03:45:16 | | PredatorIWD48 joins |
| 03:47:19 | | PredatorIWD4 quits [Ping timeout: 268 seconds] |
| 03:47:19 | | PredatorIWD48 is now known as PredatorIWD4 |
| 03:54:25 | <pabs> | https://github.com/systemd/systemd/pull/41179 |
| 04:02:17 | | etnguyen03 quits [Remote host closed the connection] |
| 04:17:11 | | DogsRNice quits [Read error: Connection reset by peer] |
| 04:55:18 | | benjins3 joins |
| 04:57:37 | | benjins3_ quits [Ping timeout: 268 seconds] |
| 05:30:56 | <nulldata> | https://news.ycombinator.com/item?id=47474255 |
| 05:32:53 | <systwi_> | Cool video that_lurker, thanks for posting. |
| 05:34:42 | | ducky quits [Ping timeout: 268 seconds] |
| 05:59:59 | | grill quits [Ping timeout: 268 seconds] |
| 06:00:04 | | Nekroschizofrenetyk joins |
| 06:00:14 | <systwi_> | Ah, hey Nekroschizofrenetyk. :-) |
| 06:00:35 | <Nekroschizofrenetyk> | systwi_ hi! |
| 06:00:36 | <systwi_> | Something like traversing the filesystem as a starting point. |
| 06:00:48 | <systwi_> | cd ~ # goes to the home directory |
| 06:00:58 | <systwi_> | ls # lists files inside |
| 06:01:22 | <systwi_> | ls -l # lists files inside but with more details |
| 06:01:28 | | grill (grill) joins |
| 06:01:58 | <systwi_> | pushd /tmp # temporarily visit the /tmp directory |
| 06:02:14 | <systwi_> | touch NewFile # make a new empty file |
| 06:02:33 | <systwi_> | popd # go back to where you were when you ran pushd |
| 06:02:52 | <systwi_> | Little things like that. |
| 06:03:02 | <systwi_> | I'm still learning, every day. I have a long way to go still. |
| 06:03:55 | <systwi_> | > touch NewFile # make a new empty file |
| 06:04:06 | <systwi_> | To clarify, NewFile is the name of the file. |
| 06:04:31 | <systwi_> | touch 123456 # make a new empty file called 123456 |
| 06:07:39 | <Nekroschizofrenetyk> | That's nice, the pushd popd commands seem like a very useful tool - what has always been a problem for me, is this going to a given dir and then having to find my way to another by typing all this stuff to the console |
| 06:11:16 | <Nekroschizofrenetyk> | Getting to feel comfortable, going through the filesystem, might be one of the biggest factors for getting to feel comfortable with cli itself. |
| 06:11:44 | <systwi_> | In a sense yes, but it might not always be a lot of typing. |
| 06:12:00 | <systwi_> | Tab completion is your friend. Supported in most shells. |
| 06:12:33 | <systwi_> | If I wanted to go to /home/systwi/Documents/2026, I could do that a number of ways. |
| 06:12:38 | <systwi_> | cd ~/Documents/2026 |
| 06:12:58 | <systwi_> | cd ~/Doc<tab> -> ~/Documents/2026 |
| 06:13:16 | <systwi_> | Also, protip, `cd' by itself brings you to your home directory. |
| 06:13:31 | <systwi_> | Another way to go to Documents/2026: |
| 06:13:35 | <systwi_> | cd ~ |
| 06:13:38 | <systwi_> | cd Documents |
| 06:13:40 | <systwi_> | cd 2026 |
| 06:14:04 | <Nekroschizofrenetyk> | oh yeah |
| 06:14:09 | <systwi_> | Feel free to intersperse ls in between any of those so you know what files/directories are around you. |
| 06:14:20 | <Nekroschizofrenetyk> | funny thing happened when I pushed tab twice |
| 06:15:13 | <Nekroschizofrenetyk> | it listed files/directories starting with string I wrote |
| 06:15:41 | <Nekroschizofrenetyk> | (at least in the home directory) |
| 06:16:11 | <Nekroschizofrenetyk> | how would I go about searching files/folders? |
| 06:19:18 | <systwi_> | I'm guessing your shell is bash. It does that. :-) |
| 06:19:32 | <Nekroschizofrenetyk> | that's right |
| 06:20:06 | <systwi_> | It'll show you what else you can type to complete valid entries. You can start typing part of it, then <tab>, then type a little more, then <tab>, and if it's unique it'll complete it. |
| 06:20:30 | <systwi_> | > how would I go about searching files/folders? | Filtering ones in your home directory, you can do something like this: |
| 06:20:45 | <systwi_> | ls -1 | grep -i 'filename' |
| 06:20:47 | <Nekroschizofrenetyk> | right now I'm on my Windows and have a Git Bash (I don't even remember, how it got installed, lol) but on Ubuntu I'vee got Bash too |
| 06:20:57 | <systwi_> | -1 in ls means, show all filenames on 1 line. |
| 06:21:23 | <systwi_> | | means, feed the output of ls into the input of grep (a text filtration tool). |
| 06:21:37 | <systwi_> | -i in grep means case-insensitive search for 'filename'. |
| 06:22:09 | <systwi_> | Nekroschizofrenetyk: It's a pretty common shell. I have it on the majority of my *nix boxes. |
| 06:22:26 | <systwi_> | Helps when learning on one platform and migrating to another. |
| 06:22:51 | <Nekroschizofrenetyk> | hah - ls -1 made it appear in multi-line view but when I did just ls next, it did 1-line view |
| 06:24:19 | <Nekroschizofrenetyk> | Oh, grep is a search command. I must have toyed with it in the past but forgotten what it means, I keep seeing it a lot |
| 06:25:48 | <systwi_> | Ahh, I'm sorry, I misspoke earlier. |
| 06:25:56 | <systwi_> | -1 means each filename is on its own line. |
| 06:26:00 | <systwi_> | 1 file per line, essentially. |
| 06:26:03 | <Nekroschizofrenetyk> | aaaaa |
| 06:26:25 | <systwi_> | As opposed to the default behaviour, which is multiple on a single line (assuming the names are short). |
| 06:26:39 | <systwi_> | My apologies for the confusion; thanks for catching it! |
| 06:26:58 | <Nekroschizofrenetyk> | what's baffling, my default seemed to have been 1 file per line but after I did ls -1, it reverted to multiple files per line, hmmmm |
| 06:27:47 | <Nekroschizofrenetyk> | Grep is neat - string doesn't have to be at the beginning of the filename. Is it possible to do a global grep? |
| 06:27:52 | <systwi_> | grep is short for global/regular expression/print, but in simpler terms it's a filtering tool for lines of text. |
| 06:28:47 | <Nekroschizofrenetyk> | o |
| 06:28:53 | <systwi_> | Hmm...could you share a screenshot please? ls -1 should only print one per line. |
| 06:29:08 | <Nekroschizofrenetyk> | what's the best way to share it here? |
| 06:30:13 | <systwi_> | The string can be anywhere in grep, but to search for the beginning of each line, you can prefix ^, which is a regular expression (regex) metacharacter. |
| 06:30:25 | <systwi_> | Nekroschizofrenetyk: https://transfer.archivete.am/ |
| 06:30:34 | <Nekroschizofrenetyk> | yeah, I've remembered about it |
| 06:31:32 | <Nekroschizofrenetyk> | okay, I'm gonna do it like a pro - with curl, so it might take a while |
| 06:32:05 | <systwi_> | No need to rush. :-) |
| 06:32:05 | <steering> | Nekroschizofrenetyk: "find" is usually a better tool to use when you need to ... find a file |
| 06:32:30 | <systwi_> | But the default is recursive, which I thought might be too far reaching. |
| 06:32:31 | <steering> | (or "locate" if you have that) |
| 06:33:08 | <steering> | indeed, if it's just one level some sort of "ls | grep" works fine |
| 06:33:13 | <systwi_> | If you're only looking for file in the current working directory, ls should be a good fit. |
| 06:33:29 | <steering> | even for multiple levels you can "ls -R | grep" if you really want to but it quickly becomes better to pull out find |
| 06:33:34 | <Nekroschizofrenetyk> | Oh, I will try to find this screenshot this way |
| 06:33:58 | <systwi_> | Nice, Nekroschizofrenetyk, you're thinking along the right track. :-) |
| 06:34:31 | <systwi_> | Honestly I'm not sure how screenshots could be taken on Windows through Git Bash... |
| 06:35:06 | <systwi_> | I'd always use PrntScn and paste it into mspaint. |
| 06:35:14 | <Nekroschizofrenetyk> | I took it with greenshot and saved the file, now trying to find it :D |
| 06:35:30 | <systwi_> | :-D |
| 06:35:31 | <steering> | dont forget to make sure the canvas in paint is smaller than the screenshot :P |
| 06:35:49 | <systwi_> | ^ Yep, I resize it to really tiny every time before pasting. |
| 06:36:05 | <Nekroschizofrenetyk> | oh yeah :D |
| 06:36:16 | <Nekroschizofrenetyk> | that's the way |
| 06:36:28 | <steering> | at this point i just use the snipping tool when i'm on windows ¯\_(ツ)_/¯ |
| 06:37:10 | <systwi_> | Snipping Tool is good but my love is the classic way, even if it's a little more labour. |
| 06:37:37 | <systwi_> | I recall having issues where Snipping Tool's window would appear in screenshots taken with Snipping Tool, lol. Maybe they fixed that. |
| 06:38:04 | <steering> | hm, i dunno, i dont think thats possible anymore but im too lazy to boot windows ot check |
| 06:38:27 | <steering> | pretty sure the window will always appear outside the snipped region or ... something |
| 06:38:38 | <steering> | or like "on top of" it |
| 06:38:57 | <systwi_> | It'd be in-between the fade out transition, and appear in the screenshot if Snipping Tool's window was within the capture area. |
| 06:39:06 | <systwi_> | Maybe that was a Win7 thing. |
| 06:39:14 | <Nekroschizofrenetyk> | I accidentally typed cd // and now it's not proceeding, lol |
| 06:39:33 | <systwi_> | That went to / (filesystem root). |
| 06:39:48 | <systwi_> | You can go back to your homepath by...? ;-) |
| 06:39:54 | <Nekroschizofrenetyk> | cd ~? |
| 06:40:01 | <systwi_> | Yep, you got it. |
| 06:40:45 | <Nekroschizofrenetyk> | OKay, I saved it in another 'Documents' folder |
| 06:41:26 | <Nekroschizofrenetyk> | there's one in c/users/ and one, well, I don't know where |
| 06:42:03 | <systwi_> | Try typing pwd and hit enter. |
| 06:42:29 | <systwi_> | pwd = print working directory, i.e. tell me where I currently am in the filesystem. |
| 06:43:14 | <systwi_> | (a cheat: you might be able to click and drag the image from Explorer into the Git Bash window and have it auto-fill the path) |
| 06:43:21 | <Nekroschizofrenetyk> | :o |
| 06:44:12 | <Nekroschizofrenetyk> | oh no, the path I want is |
| 06:44:12 | <Nekroschizofrenetyk> | '/c/Users/48724/OneDrive/Dokumenty/2026-03-22 07_31_52-MINGW64__c_Users_48724.png' |
| 06:44:44 | <Nekroschizofrenetyk> | (is it wise to share the this path?) |
| 06:44:56 | <Nekroschizofrenetyk> | freaking Microsoft |
| 06:45:53 | <Nekroschizofrenetyk> | I've been putting the files inside this trashy OneDrive thing |
| 06:47:13 | <systwi_> | It doesn't reveal anything sensitive I think. |
| 06:47:17 | <Nekroschizofrenetyk> | I went to this directory and grep-found the file by a string in its name I remembered, yay |
| 06:47:43 | <systwi_> | Maybe that you use OneDrive for file syncing, but that's about the extent of it. |
| 06:48:04 | <systwi_> | Hey! Nice job. :-) |
| 06:49:05 | <systwi_> | Windows does that these days. OneDrive file syncing is on by default and it breaks the traditional C:\Users\<username>\Desktop .\Documents .\Downloads ... |
| 06:49:46 | <systwi_> | Takes some work to rip it all out. :-< |
| 06:49:48 | <Nekroschizofrenetyk> | ...... yeah, so I have another /c/Users/48724/Documents here, though it's mostly empty, maybe created it somehow |
| 06:50:12 | <Nekroschizofrenetyk> | how do I copy a file path? |
| 06:50:27 | <systwi_> | That's either a Documents folder unsynced by OneDrive or a new one you created. |
| 06:50:39 | <systwi_> | > how do I copy a file path? | To the clipboard? |
| 06:50:42 | <Nekroschizofrenetyk> | yes |
| 06:50:56 | <Nekroschizofrenetyk> | you know, the 'cool way' |
| 06:50:59 | <systwi_> | You might be able to highlight it with your mouse and right-click. |
| 06:51:04 | <systwi_> | Ahh, the cool way, hehe. |
| 06:51:13 | <systwi_> | There's a third-party tool I use on Windows. |
| 06:51:19 | <systwi_> | pbcopy/pbpaste |
| 06:51:33 | <systwi_> | I think it's called something different. I have it aliased because OSX has those commands. |
| 06:51:35 | <Nekroschizofrenetyk> | there's no way to do it in bash? |
| 06:51:45 | <systwi_> | It is doable over the command line. |
| 06:52:04 | <systwi_> | Something like echo '/c/Users/48724/OneDrive/Dokumenty/2026-03-22 07_31_52-MINGW64__c_Users_48724.png' | pbcopy |
| 06:52:14 | <systwi_> | But you'd need the program installed first. |
| 06:52:19 | <Nekroschizofrenetyk> | ah, I get it |
| 06:52:20 | <systwi_> | (I'm looking to see what it is) |
| 06:52:52 | <systwi_> | Ah, pasteboard. |
| 06:52:53 | <systwi_> | https://community.chocolatey.org/packages/pasteboard |
| 06:53:20 | <Nekroschizofrenetyk> | thanks |
| 06:53:47 | <systwi_> | You're welcome. |
| 06:54:26 | <systwi_> | Through PowerShell, with Chocolatey installed, you can: choco install pasteboard |
| 06:55:42 | <Nekroschizofrenetyk> | thx, I think I'll check it later |
| 06:55:45 | <systwi_> | Then potentially: echo '/c/Users/48724/OneDrive/Dokumenty/2026-03-22 07_31_52-MINGW64__c_Users_48724.png' | /c/ProgramData/chocolatey/bin/pbcopy.exe |
| 06:55:56 | <systwi_> | No problem. |
| 06:56:06 | <Nekroschizofrenetyk> | I'll try to transfer it somehow |
| 06:56:11 | <systwi_> | It is a lot to learn, but I think you've learned a lot thus far. :-) |
| 06:56:42 | <Nekroschizofrenetyk> | ' $ curl --upload-file ./hello.txt https://transfer.archivete.am/hello.txt https://transfer.archivete.am/66nb8/hello.txt ' I'm not sure how to interpret that. I need to type those two urls both? |
| 06:56:43 | <eggdrop> | inline (for browser viewing): https://transfer.archivete.am/inline/hello.txt https://transfer.archivete.am/inline/66nb8/hello.txt |
| 06:57:14 | <systwi_> | Only the first one. The second is given to you after the upload completes. |
| 06:57:21 | <Nekroschizofrenetyk> | Ah |
| 06:57:44 | <systwi_> | I can write it for you if you'd like, or you can give it a try first, either-or. |
| 06:57:48 | <Nekroschizofrenetyk> | noo |
| 06:57:59 | <Nekroschizofrenetyk> | okay, there's something wrong |
| 06:58:08 | <Nekroschizofrenetyk> | 'C:/Users/48724/OneDrive/Dokumenty/2026-03-22' |
| 06:58:10 | <Nekroschizofrenetyk> | ah, okay I know |
| 06:58:23 | <Nekroschizofrenetyk> | I need to regex with \ the empty space in the filename |
| 06:58:36 | <Nekroschizofrenetyk> | now it works |
| 06:58:43 | <Nekroschizofrenetyk> | https://transfer.archivete.am/RlkTC/bashsss.png |
| 06:58:44 | <eggdrop> | inline (for browser viewing): https://transfer.archivete.am/inline/RlkTC/bashsss.png |
| 06:59:17 | <systwi_> | Yep, although in this case it's not really regex, but a backslash-escape that tells bash to literally-interpret the space as part of the filename. |
| 06:59:36 | <systwi_> | Cool! Very nicely done. |
| 07:00:07 | <systwi_> | Ah, okay, I think I may know why it's still all on one line. |
| 07:00:44 | <Nekroschizofrenetyk> | but then it reverted to the other way |
| 07:00:44 | <Nekroschizofrenetyk> | https://transfer.archivete.am/RmeFx/2026-03-22%2007_59_36-Greenshot.png |
| 07:00:46 | <eggdrop> | inline (for browser viewing): https://transfer.archivete.am/inline/RmeFx/2026-03-22%2007_59_36-Greenshot.png |
| 07:01:01 | <systwi_> | Those NTUSER.DAT files with long filenames, it probably exceeds the maximum line length, and in that case ls just puts everything on its own line. |
| 07:01:18 | <systwi_> | Inside a directory with shorter names it should put multiple names on the same line. |
| 07:02:02 | <systwi_> | Oh, hmm...maybe the window size changed? |
| 07:03:44 | <systwi_> | Ohhhh, I see what happened. |
| 07:04:05 | <systwi_> | I think you probably ran ls when the window was smaller, then maximized the window. |
| 07:04:32 | <Nekroschizofrenetyk> | yes |
| 07:04:35 | <Nekroschizofrenetyk> | that's very much possible |
| 07:05:10 | <systwi_> | When the window was smaller, ls retrieved the width as such (possibly 80 columns) and printed its output with one name per line, as best as it could. |
| 07:05:19 | <Nekroschizofrenetyk> | even better - now that I remember, it was exactly what I did |
| 07:05:36 | <Nekroschizofrenetyk> | nice :) |
| 07:06:01 | <systwi_> | Since those NTUSER.DAT files have very long names, they overflowed to the next line (unavoidable), and that definitely caused ls to print each file on one per line regardless of -1. |
| 07:06:24 | <Nekroschizofrenetyk> | yeah, thanks! |
| 07:06:49 | <systwi_> | When resizing after the fact, the majority of tools can't readjust their outputs to match the new size unless reran. |
| 07:06:58 | <systwi_> | You're welcome. :-) |
| 07:08:52 | <Nekroschizofrenetyk> | if I wanted to find that file but was in a completely different directory, and didn't know its name, just, say remembered the 'MINGW' part (but not that it was all uppercase), how would I go about it? is it possible to combine find and grep then? was '-i' for 'case insensitive'? |
| 07:09:42 | | ducky (ducky) joins |
| 07:12:16 | <systwi_> | You could do something like this: |
| 07:12:31 | <systwi_> | find . -type f -iname '*MINGW*' |
| 07:12:47 | <systwi_> | . = current working directory |
| 07:13:01 | <systwi_> | -type f = return only files |
| 07:13:39 | <systwi_> | -iname '*MINGW*' = case-insensitive match any files that have MINGW in their names, with anything before and anything after it |
| 07:13:54 | <systwi_> | It shouldn't need grep unless there are way too many results. |
| 07:14:06 | <Nekroschizofrenetyk> | great! |
| 07:14:10 | <systwi_> | :-) |
| 07:14:24 | <Nekroschizofrenetyk> | that's really helpful, thanks a lot\ |
| 07:14:58 | <Nekroschizofrenetyk> | one thing that's really helping here is that I remember this cd .. trick |
| 07:15:14 | <systwi_> | You're very welcome. |
| 07:15:29 | <systwi_> | cd .. is a great help. :-) |
| 07:15:48 | <systwi_> | You can use .. in pretty much anything, too. |
| 07:15:55 | <systwi_> | ls .. |
| 07:16:20 | <systwi_> | ^ List the directory contents of the parent folder to $PWD. |
| 07:16:32 | <systwi_> | (and $PWD is just a variable for the current working directory) |
| 07:24:29 | <Nekroschizofrenetyk> | oh |
| 07:24:37 | <Nekroschizofrenetyk> | that's coo; |
| 07:25:00 | | ducky quits [Ping timeout: 268 seconds] |
| 07:25:10 | | ducky (ducky) joins |
| 07:25:37 | <Nekroschizofrenetyk> | I couldn't find the file, hmmm |
| 07:26:41 | <systwi_> | Hmm, what's your $PWD? |
| 07:27:12 | <systwi_> | (two ways to check, the second being echo "$PWD") |
| 07:27:27 | <Nekroschizofrenetyk> | it's c/Users/48724 |
| 07:28:21 | <systwi_> | Hmm, out of curiousity, try this instead: find . -type f -iname "*MINGW*" |
| 07:29:10 | <systwi_> | Using ' instead of " may have made `find' treat the * literally (but I didn't think it did that here). |
| 07:29:49 | <Nekroschizofrenetyk> | oh yeah |
| 07:30:14 | <Nekroschizofrenetyk> | now it's finding a ton of results |
| 07:31:28 | <systwi_> | Huh, interesting, I tried it with single quotes on my system and it found the same number of files as the double-quote version. (o_O)? |
| 07:32:14 | <Nekroschizofrenetyk> | same for me |
| 07:32:40 | <systwi_> | Historically I've used " a lot more with `find' wildcards than ' (but use ' everywhere else for literal strings). |
| 07:32:59 | <Nekroschizofrenetyk> | I think it was relevant somewhere... JS maybe? |
| 07:33:04 | <systwi_> | Oh, did the single-quote one work right the second time? |
| 07:33:14 | <Nekroschizofrenetyk> | it did, with * |
| 07:33:25 | <Nekroschizofrenetyk> | ah yes |
| 07:33:43 | <systwi_> | Could you share a screenshot please? I'm curious if there's something new I don't know. |
| 07:33:47 | <Nekroschizofrenetyk> | because I forgot about the wildcards in my original finds |
| 07:34:04 | <systwi_> | Ahhh, got it! No worries. |
| 07:34:26 | <Nekroschizofrenetyk> | what screenshot exactly? |
| 07:34:46 | <systwi_> | I haven't written any JS but IIRC it treats ' and " identically. I know some languages do and some don't. bash (and most other *nix shells) treat them differently. |
| 07:35:26 | <systwi_> | > what screenshot exactly? | I was wondering about the find command that didn't show anything, but I didn't realize initially that it was just missing the wildcards (*). |
| 07:36:03 | <systwi_> | So, it's okay, you don't need to share any screenshot for it. I think I understand now. :-) |
| 07:36:31 | <Nekroschizofrenetyk> | Yeah, that's what I thought you though but wanted to confirm it was so |
| 07:36:36 | <Nekroschizofrenetyk> | you thought* |
| 07:37:08 | <systwi_> | Right, yeah. |
| 07:37:34 | <systwi_> | It needs the wildcards to match files that have parts of the specified name. |
| 07:37:44 | <steering> | the notable difference in bash between '' and "" is variables |
| 07:37:54 | <steering> | wildcards arent processed in either |
| 07:38:16 | <systwi_> | Otherwise it only returns files that have that whole name. |
| 07:38:47 | <systwi_> | Thanks steering, I thought maybe they were in double-quotes but I was wrong. |
| 07:39:08 | <systwi_> | Everything is literal inside single-quotes (except single quotes ;-) ). |
| 07:39:20 | <steering> | Enclosing characters in double quotes preserves the literal value of all characters within the quotes, with the exception of $, `, \, and, when history expansion is enabled, !. ... The characters $ and ` retain their special meaning within double quotes. |
| 07:40:06 | <systwi_> | Thank you, I only knew/really use $variables inside double-quotes. |
| 07:40:51 | <systwi_> | Oh, hmm, I've probably used \ inside double-quote strings with scp, but I thought that was maybe a remote-shell thing. |
| 07:41:28 | <steering> | it probably was :P |
| 07:41:29 | <Nekroschizofrenetyk> | hmmm, so if it preserved the literal value, why did it correctly search for all strings with "MINGW" in it, instead of all strings with "*MINGW*" in it? maybe I'm missing something |
| 07:41:39 | <steering> | quoting for scp used to be a whole nother level of awful |
| 07:42:36 | <Nekroschizofrenetyk> | if I wanted to literally quote *, would I need an escape character? |
| 07:42:39 | <steering> | nowadays you just use a recent version and single quote the whole arg |
| 07:42:54 | <Nekroschizofrenetyk> | regardless of the type of quotes? |
| 07:43:10 | <steering> | erm |
| 07:44:13 | <steering> | i'm not certain but you can probably escape it with a \ |
| 07:44:28 | <steering> | there's two levels of interpreting wildcards going on here |
| 07:44:50 | <steering> | surrounding it with quotes keeps it safe from the level of the shell, but then find also interprets wildcards (in the argument to -name) |
| 07:45:21 | | ramsey quits [Ping timeout: 633 seconds] |
| 07:45:21 | | pnJay quits [Ping timeout: 633 seconds] |
| 07:45:28 | <steering> | if you wanted to search for files with "*MINGW*" in their name it'd probably be something like find ... -name '*\*MINGW\**' |
| 07:46:04 | <systwi_> | steering: I still need to use scp on _very old_ systems, so I face that quoting fun very often. :') |
| 07:46:11 | <steering> | systwi_: ew :( |
| 07:46:24 | | ramsey (ramsey) joins |
| 07:46:38 | <Nekroschizofrenetyk> | Thanks, that's what I thought |
| 07:46:52 | <Nekroschizofrenetyk> | by the way, *"MINGW"* seems to work as well |
| 07:46:53 | <steering> | the only time i normally use \ in bash is when i need both single and double quotes inside a string... as with scp... but even that's rare |
| 07:47:02 | <systwi_> | Yep, steering has it right I believe. |
| 07:47:08 | <steering> | Nekroschizofrenetyk: no, or only by coincidence |
| 07:47:14 | <Nekroschizofrenetyk> | Oh |
| 07:47:16 | <systwi_> | I can double-check on my Linux box. |
| 07:47:26 | <systwi_> | Re: find with a literal * in the name. |
| 07:47:46 | <steering> | Nekroschizofrenetyk: try this: |
| 07:47:49 | | IDK quits [Ping timeout: 633 seconds] |
| 07:48:01 | | pnJay joins |
| 07:49:14 | <steering> | mkdir tmp tmp/2; cd tmp; touch MINGW 2/aMINGWb; find . -name *"MINGW"*; find . -name "*MINGW*" |
| 07:49:27 | <steering> | (you'll want to enter the find commands separately so you can tell which is which) |
| 07:50:01 | <steering> | and: echo *"MINGW"*; echo "*MINGW*" |
| 07:50:40 | | IDK (IDK) joins |
| 07:51:11 | <steering> | if there's no match for the wildcard in your current directory, then bash will still pass it through to find like normal; but if there is a match for the wildcard, then find will only receive the match of that wildcard, and either throw an error or only find that exact filename |
| 07:52:44 | <Nekroschizofrenetyk> | Hmmmmmmmmmmmm |
| 07:54:42 | <systwi_> | Yep, confirmed: https://transfer.archivete.am/inline/Pe5Pj/wildcardtest.png |
| 07:55:04 | <systwi_> | `find' needs a backslash (inside quotes) to treat the wildcard literally. |
| 07:55:22 | <systwi_> | *treat it as a literal asterisk and not a wildcard, I mean. |
| 07:56:39 | <Nekroschizofrenetyk> | steering I think I understand, that's interesting, thanks! |
| 07:57:15 | <systwi_> | Nice example, steering. |
| 07:57:40 | <systwi_> | Another thing, too, is that * will not match dotfiles (unless something in the shell is changed IIRC). |
| 07:57:47 | <Nekroschizofrenetyk> | systwi_ yeah, oh, that's this arch I've been hearing about a lot :D |
| 07:57:59 | <systwi_> | `find' treats them as any other file and shows them. |
| 07:58:00 | <Nekroschizofrenetyk> | archlinux* lols |
| 07:58:47 | <Nekroschizofrenetyk> | dotfiles - the hidden ones? |
| 07:58:55 | <systwi_> | Hehe, yep, my install is very tiny, being CLI only (but my daily driver OS does have a GUI--I'm not that hardcore (yet ;-) )). |
| 07:59:42 | <systwi_> | Correct, any files that begin with a period. |
| 07:59:49 | <systwi_> | Example: .bashrc |
| 08:00:33 | <systwi_> | ls, for example, won't show them unless you include the -a (or --all) option. |
| 08:01:02 | <Nekroschizofrenetyk> | niec |
| 08:01:04 | <Nekroschizofrenetyk> | nice* |
| 08:01:10 | <systwi_> | (or -A / --almost-all to hide . and .. dirs) |
| 08:01:41 | <systwi_> | Thanks. :-) |
| 08:02:19 | <Nekroschizofrenetyk> | -a/-A divergence :o |
| 08:03:28 | <systwi_> | Ah yes, letter case matters in *nix much more than in Windows. |
| 08:03:54 | <systwi_> | To a human, A and a are the same, but one may see how a computer would see otherwise. |
| 08:03:56 | <Nekroschizofrenetyk> | wait, so -A has shown more results than -a, even though it's 'almost all', not 'all'? |
| 08:04:34 | <Nekroschizofrenetyk> | Hehe, I know that, what seemed funny to me, was that you have 'all' and 'almost all |
| 08:04:35 | <Nekroschizofrenetyk> | ' |
| 08:04:45 | <systwi_> | -a should show more than -A, the difference is that -a also includes . and .. in the results and -A doesn't include them. |
| 08:05:09 | <systwi_> | Hehe, exactly. :-) |
| 08:05:38 | <Nekroschizofrenetyk> | my eyes must be playing tricks on me |
| 08:05:54 | <systwi_> | Would you like to verify using the shell? :-D |
| 08:06:00 | <systwi_> | We can count lines! |
| 08:06:01 | <Nekroschizofrenetyk> | Ah, now I see |
| 08:06:20 | <Nekroschizofrenetyk> | ls -A gives me more lines but ls -a gives me more columns |
| 08:06:47 | <systwi_> | Oh it does? |
| 08:06:55 | <systwi_> | I'm curious...I'm going to check too. |
| 08:07:06 | <systwi_> | I almost always use ls -a |
| 08:07:08 | <Nekroschizofrenetyk> | probably to prevent overflow |
| 08:07:19 | <systwi_> | Or, really, ls -al is my most-used one. |
| 08:07:23 | <Nekroschizofrenetyk> | in my case, because I have those long NTUSER.DATdjfiudsbvgfifsibidsbf files |
| 08:09:12 | <Nekroschizofrenetyk> | https://transfer.archivete.am/16gmA0/2026-03-22%2009_08_25-MINGW64__c_Users_48724.png |
| 08:09:13 | <eggdrop> | inline (for browser viewing): https://transfer.archivete.am/inline/16gmA0/2026-03-22%2009_08_25-MINGW64__c_Users_48724.png |
| 08:10:26 | <systwi_> | Ohh, oops, I overlooked something. |
| 08:10:51 | <systwi_> | Oh wait, hmm, checking a bit more. |
| 08:10:54 | <Nekroschizofrenetyk> | is there a command to count the results? |
| 08:12:15 | <Nekroschizofrenetyk> | (funny, I have those unused things like anaconda, I know nothing about) |
| 08:16:42 | <systwi_> | Hmm, is it possible that you resized your window in between those two? |
| 08:16:51 | <systwi_> | Mine looks the same: https://transfer.archivete.am/inline/2KMmq/a-vs-a.png |
| 08:17:01 | <systwi_> | (but it could be filename length differences, potentially) |
| 08:17:11 | <Nekroschizofrenetyk> | nope |
| 08:17:12 | <systwi_> | > is there a command to count the results? | Yes there is. :-) |
| 08:17:27 | <Nekroschizofrenetyk> | I bet it's just the length/overflow thing |
| 08:17:51 | <systwi_> | > (funny, I have those unused things like anaconda, I know nothing about) | It's common for homepaths to get littered by dotfiles, bleh, I face it too. :-< |
| 08:18:16 | <systwi_> | > nope ... I bet it's just the length/overflow thing | Hmm, yeah, that's the only thing I can think of. |
| 08:18:41 | <systwi_> | Maybe because of the two added entries, that caused ls to resize the list and, as a result, the column widths changed. |
| 08:19:05 | <systwi_> | But yeah, to count the lines from ls, there's a tool: wc (word count) |
| 08:19:18 | <systwi_> | ls -1A | wc -l |
| 08:19:28 | <systwi_> | -l means count the number of lines |
| 08:19:35 | <systwi_> | ls -1a | wc -l |
| 08:19:45 | <systwi_> | The latter should have two extra lines. |
| 08:20:50 | <systwi_> | (fun fact: -1 isn't _really_ needed when piping ls into other tools, but it doesn't hurt to specify it anyway just to be sure every line only contains one filename) |
| 08:21:04 | <systwi_> | (and piping = using | to feed the output of one command into another) |
| 08:22:43 | <systwi_> | Ahhh, okay, I was able to replicate the same column-shifting behaviour when running it on files with huge names like that. |
| 08:23:21 | <Nekroschizofrenetyk> | >and piping = using | to feed the output of one command into another) - thanks, that's a great explanation, I've seen | a lot but couldn't easily tell myself how to understand it |
| 08:25:12 | <systwi_> | No problem! I remember being in the same exact position as you. |
| 08:25:26 | <systwi_> | I had seen people use | a lot but never really understood what it meant, even when trying to use it myself. |
| 08:26:59 | <Nekroschizofrenetyk> | I think I've encountered another way of marking that you want to do this, but this might have been in another context, like coding or html or something. Maybe somehting like > was used? hmmmm |
| 08:27:28 | <Nekroschizofrenetyk> | that's what confused me probably and made me think of | as something else |
| 08:28:13 | <Nekroschizofrenetyk> | oh, C++ had something like > or >>, <<, now that I remember |
| 08:28:53 | <Nekroschizofrenetyk> | (not that I know C++, but my ADD brain tried learning a lot of things... sanskrit included) |
| 08:28:57 | <systwi_> | HTML/XML have <!-- comment text here-->, maybe that's what you were thinking of? |
| 08:29:31 | <systwi_> | But bash (and many other *nix shells) also have <, >, >>, and bash in particular even has <<<. |
| 08:29:33 | <Nekroschizofrenetyk> | nope, something with more similar meaning |
| 08:29:51 | <systwi_> | (I can't speak for C++ because I haven't learned that yet) |
| 08:30:02 | <systwi_> | Hmm... |
| 08:31:27 | <systwi_> | I think I know what you mean. I'm pretty sure I've seen it used elsewhere too, but I can't think of what that may be. |
| 08:32:08 | <systwi_> | Oh, maybe regex? |
| 08:32:30 | <systwi_> | Example: ^https?://example\.(com|org|gov)/ |
| 08:32:47 | <Nekroschizofrenetyk> | somebody is throwing out to a 'stump' (we've got a tree stump with three windows where you can put books you don't want anymore, or whatever other thing, in our neighbourhood), where somebody leaves almost mint-condition, beautiful coding textbooks. The hoarder in me has taken some of them, when I had the latest bout of "LET'S LEARN TO CODE" |
| 08:32:47 | <Nekroschizofrenetyk> | hyperfocus |
| 08:33:05 | <Nekroschizofrenetyk> | let me check one thing |
| 08:33:54 | <systwi_> | Oh cool! I've seen places like that in my neighbourhood too. Nice that you picked up some coding books there. :-) |
| 08:35:13 | <Nekroschizofrenetyk> | well, nevermind, maybe It came to me in a dream or whatever :D |
| 08:35:51 | <Nekroschizofrenetyk> | but it could have something to do with writing an output of a command in C++ to a file |
| 08:37:00 | <Nekroschizofrenetyk> | Yeah, now I don't know what to do with them. I'm not going to learn C, C++ or Java (or rather, I won't be able to, even if I start) but these books are soooo beautiful |
| 08:37:04 | <systwi_> | I'm not sure with regards to | being used elsewhere, but I do know that > and >> can redirect command output to a file in *nix shells. |
| 08:37:24 | <systwi_> | Example: echo 'This text will appear in a new text file.' > filename.txt |
| 08:37:39 | <systwi_> | echo 'This will append a second line to the same file.' >> filename.txt |
| 08:37:53 | <systwi_> | echo 'This will erase the whole file and just put this line here.' > filename.txt |
| 08:39:07 | <systwi_> | Maybe there's a copy on-line you could save and then put the books back on the stump? |
| 08:39:30 | <systwi_> | Or keep them as collector's items. Maybe some family members would be interested. :-) |
| 08:41:42 | <Nekroschizofrenetyk> | Oh, yes!!!! that's it, exactly. I was thinking about it maybe being in bash as well, and there it is. That's what kept me confused |
| 08:42:15 | <Nekroschizofrenetyk> | I probably should just leave them in the stump |
| 08:42:52 | <Nekroschizofrenetyk> | though if there's some Polish guy out here wanting to learn C++ or Java, I will gladly send them |
| 08:43:21 | <Nekroschizofrenetyk> | at least some of them are online as PDFs |
| 08:43:56 | <Nekroschizofrenetyk> | I thought a lot about archiving physical books - digitalising and sharing, but scanning is difficult |
| 08:44:40 | <systwi_> | I don't know any unfortunately (and I don't speak Polish myself). Maybe somebody here would be interested. |
| 08:44:55 | <Nekroschizofrenetyk> | with some books I think I could cut out the pages with a guillotine and then feed them to a scanner but I don't like destroying books |
| 08:45:01 | <systwi_> | Ah, okay! I'm glad we solved the mystery of writing text to files. :-) |
| 08:46:05 | <systwi_> | I'm in the same position as you with regards to scanning books. I've accumulated a lot of books over time with the goal of scanning them one day, but haven't had the opportunity to build a professional book scanning setup. |
| 08:46:20 | <Nekroschizofrenetyk> | https://transfer.archivete.am/nKjWb/signal-2026-03-22-094535.jpeg so beautiful |
| 08:46:21 | <eggdrop> | inline (for browser viewing): https://transfer.archivete.am/inline/nKjWb/signal-2026-03-22-094535.jpeg |
| 08:46:21 | <systwi_> | I too have thought about cutting the binding off of books but hate to wreck them just to scan them. |
| 08:47:16 | <systwi_> | Oh wow, these look really cool! |
| 08:47:25 | <systwi_> | Awesome to see that Sun logo on the one, too. :-D |
| 08:48:23 | <Nekroschizofrenetyk> | I also had somewhere a C textbook from the eighties with 'arabesque' font |
| 08:49:11 | <Nekroschizofrenetyk> | I guess I've already put it back |
| 08:49:19 | <systwi_> | Ooh, interesting. Do you know what it's called? I'd like to see the cover. |
| 08:49:53 | <systwi_> | I have somewhere a C book too, or maybe it's C++? It has built-in ribbon bookmarks which is pretty neat. |
| 08:50:36 | <systwi_> | Ah, it was C++. I found the cover of that one: https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1347400993l/112251.jpg |
| 08:51:54 | <Nekroschizofrenetyk> | yeah |
| 08:52:03 | <systwi_> | This is definitely on my list to acquire one day (and hopefully learn too): https://m.media-amazon.com/images/I/51EyaJeebHL._SL1056_.jpg |
| 08:53:04 | <Nekroschizofrenetyk> | I'll try to find it |
| 08:54:43 | <Nekroschizofrenetyk> | thaaaat could be a translation of Prata's C Primer's first ed |
| 08:56:31 | <systwi_> | Looking through some covers on-line. |
| 08:56:32 | <steering> | yeah C++ has like std::cout << "string" |
| 08:56:49 | <steering> | and std::cin >> variable |
| 08:56:50 | <steering> | or something |
| 08:57:25 | <steering> | because obviously you should want to left shift your stdout by "hello world" places in order to output it ;) |
| 08:58:23 | <Nekroschizofrenetyk> | :D |
| 08:58:34 | <systwi_> | steering: Is that just the tip of the iceberg as to why many people knock C++? |
| 08:59:36 | <systwi_> | Aiee, it's really late, I should head for bed. |
| 08:59:43 | <Nekroschizofrenetyk> | meh, can't find this edition |
| 08:59:46 | <steering> | also, systwi_: using ls -a is borderline psychotic :P |
| 08:59:49 | <Nekroschizofrenetyk> | what time is it by you? |
| 08:59:50 | <steering> | -A is clearly superior :P |
| 09:00:01 | <systwi_> | It's okay, please don't stress out about it. Thank you for checking. :-) |
| 09:00:32 | <systwi_> | steering: Boooo, -a camp! -a caaaaamp! X-D |
| 09:00:46 | <systwi_> | Nekroschizofrenetyk: It's ~04:00 here. |
| 09:00:46 | <steering> | i don't need to see . and .. to know they're there xD |
| 09:00:48 | <Nekroschizofrenetyk> | I'm 90% sure it was Prata's first (or something) edition, too bad, maybe this translation is not available anymore |
| 09:00:58 | <steering> | even when i want to see the current directory i'll ls -ld instead |
| 09:01:29 | <systwi_> | steering: but A requires shift; one extra (precious) keypress. |
| 09:01:40 | <steering> | mmh |
| 09:01:49 | | twiswist_ quits [Read error: Connection reset by peer] |
| 09:01:49 | | ducky quits [Ping timeout: 268 seconds] |
| 09:02:00 | <systwi_> | Nekroschizofrenetyk: It's okay, it'll turn up. :-) |
| 09:02:00 | | twiswist (twiswist) joins |
| 09:02:26 | | ducky (ducky) joins |
| 09:02:51 | <Nekroschizofrenetyk> | oh yeah, I deal with this timezone in my job every day |
| 09:03:20 | <Nekroschizofrenetyk> | well, if it's 4 am, it's better to catch some sleep |
| 09:04:46 | <systwi_> | I hope you two have a nice rest of your day. Take care! I had a nice time chatting. :-) |
| 09:04:52 | <systwi_> | o/ |
| 09:04:55 | <Nekroschizofrenetyk> | thanks!!! bye! |
| 09:05:01 | <Nekroschizofrenetyk> | me too |
| 09:46:51 | | Nekroschizofrenetyk quits [Quit: Ooops, wrong browser tab.] |
| 10:13:22 | <steering> | anyone got experience with sharktech.net? |
| 11:00:04 | | Bleo18260072271962345522201 quits [Quit: The Lounge - https://thelounge.chat] |
| 11:02:46 | | Bleo18260072271962345522201 joins |
| 11:17:54 | <klea> | 2026-03-22 06:33:13 <systwi_> If you're only looking for file in the current working directory, ls should be a good fit. <- Unless you have a lot of files, in which case, `find -maxdepth 1 -iname '*PartOfFileName*'` or replacing iname for ipath and doing `*.png` could be better. |
| 11:44:57 | | etnguyen03 (etnguyen03) joins |
| 12:23:30 | | SootBector quits [Ping timeout: 240 seconds] |
| 12:26:30 | | SootBector (SootBector) joins |
| 12:56:00 | | FiTheArchiver joins |
| 13:02:41 | | FiTheArchiver quits [Client Quit] |
| 14:17:52 | | SootBector quits [Remote host closed the connection] |
| 14:19:12 | | SootBector (SootBector) joins |
| 15:16:09 | | SootBector quits [Remote host closed the connection] |
| 15:17:19 | | SootBector (SootBector) joins |
| 15:23:52 | | Cornelius705 quits [Quit: Cornelius705] |
| 15:24:53 | | Cornelius705 (Cornelius) joins |
| 15:37:06 | | SootBector quits [Remote host closed the connection] |
| 15:38:15 | | SootBector (SootBector) joins |
| 15:54:30 | | SootBector quits [Ping timeout: 240 seconds] |
| 15:56:23 | | SootBector (SootBector) joins |
| 16:08:28 | <klea> | https://wiki.c2.com/?ThreeLevelsOfAudience Interesting read |
| 16:11:38 | | @imer quits [Quit: Oh no] |
| 16:13:28 | | Nekroschizofrenetyk joins |
| 16:24:40 | | ducky quits [Remote host closed the connection] |
| 16:39:50 | | imer (imer) joins |
| 16:39:50 | | @ChanServ sets mode: +o imer |
| 16:42:48 | | ducky (ducky) joins |
| 16:54:41 | | DogsRNice joins |
| 16:56:55 | | Cornelius705 quits [Client Quit] |
| 16:57:51 | | Cornelius705 (Cornelius) joins |
| 17:02:45 | <systwi_> | Nekroschizofrenetyk: Yep, this is also a good option. ^ |
| 17:02:59 | <systwi_> | TIMTOWTDI - There Is More Than One Way To Do It. :-) |
| 17:03:19 | <Nekroschizofrenetyk> | I can't recall what option was mentioned by me :). Hope you had good sleep |
| 17:03:54 | <systwi_> | Thank you, it went well. |
| 17:04:15 | <systwi_> | Ah, and sorry for being unclear, I meant what klea had said. |
| 17:04:56 | <systwi_> | -maxdepth <number> = only allow find to recurse <number> levels deep. With 1 it doesn't go any further than the current working directory. |
| 17:05:08 | | ducky quits [Remote host closed the connection] |
| 17:06:34 | <systwi_> | -ipath <path> - I've never heard about this one, but it's cool to learn about it. I figure it's an alternative to specifying the path as the first argument (like find . ). |
| 17:06:59 | <systwi_> | ipath, probably case-insensitive too. |
| 17:07:20 | <klea> | No, it lets you do cool stuff like find / -ipath '*bin*/git-*' for example. |
| 17:08:24 | <systwi_> | Ohh, oops, that's probably for filtering out paths that match those I figure, right? |
| 17:08:31 | <systwi_> | That'd make more sense. |
| 17:08:34 | | ducky (ducky) joins |
| 17:10:04 | <systwi_> | Ahhh, okay, I just tried it out. |
| 17:11:01 | | ducky quits [Remote host closed the connection] |
| 17:11:03 | <systwi_> | It looks like it's filtering paths that have '*bin*/git-*' _anywhere_ throughout the path. |
| 17:11:18 | <systwi_> | Whether that be filename or part of the directory. |
| 17:11:30 | <systwi_> | Cool, TIL. :-) |
| 17:12:23 | <klea> | I normally do -ipath */filename even when I should use iname because lazy! |
| 17:12:34 | <klea> | procrastination++ |
| 17:12:34 | <eggdrop> | [karma] 'procrastination' now has 103 karma! |
| 17:12:54 | <systwi_> | Hehehe. |
| 17:13:25 | <systwi_> | Is there a way to filter results that have a phrase specifically in the path and _not_ a part of the filename? |
| 17:14:09 | <systwi_> | Just guessing without trying: find . -ipath '*bin*/git-*' -not -iname 'git-*' |
| 17:14:22 | <systwi_> | Or maybe: find . -ipath '*bin*/git-*' -not -iname '*git-*' |
| 17:14:42 | | ducky (ducky) joins |
| 17:16:37 | <Nekroschizofrenetyk> | where's the difference between your two propositions? |
| 17:16:49 | <Nekroschizofrenetyk> | ah |
| 17:16:52 | <Nekroschizofrenetyk> | one asterisk in git |
| 17:16:58 | <systwi_> | Ah, sorry for not being clear, the-yeah, you got it. |
| 17:17:16 | <systwi_> | I'm playing with it in my terminal now. |
| 17:17:51 | <klea> | find -ipath '*bin*/*' -and -not -iname 'git-*'? |
| 17:19:33 | <systwi_> | But might that also return results like: foobin/tree? |
| 17:20:13 | <systwi_> | Sorry if I wasn't clear in my question. Let's say we're trying to find paths that have 'git' in them but sans filenames with 'git' in them. |
| 17:20:31 | <systwi_> | I'm trying some things now to figure this out. ^ |
| 17:21:00 | <systwi_> | Okay I think this works: find . -ipath '*git*' -not -iname '*git*' |
| 17:21:47 | <systwi_> | Now for the inverse: filenames with 'git' in them but not in parent directories with 'git' in them. |
| 17:22:25 | <systwi_> | (that feels weird using `find' without specifying a path... o_O) |
| 17:29:29 | <systwi_> | Hmm, I think what's throwing me is that -ipath matches everything, so something like `find . -iname '*git*' -not -ipath '*git*'' ends up with no results, because all 'git' matches with -iname are removed by -not -ipath. |
| 17:31:22 | <Nekroschizofrenetyk> | could changing order of the command help? |
| 17:31:56 | <Nekroschizofrenetyk> | like find . -not -ipath '*git*' -iname '*git*' |
| 17:31:59 | <systwi_> | In `find''s case it does change behaviour, as it processes on a "first option seen first applies first" basis. |
| 17:32:16 | <systwi_> | Giving that a try... |
| 17:32:33 | <systwi_> | Ah, oops, no, sadly that didn't work here. |
| 17:32:41 | <Nekroschizofrenetyk> | :( |
| 17:33:09 | <systwi_> | I think because anything matching '*git*' is immediately removed by -not -ipath, and afterwards -iname can't find matches because they were already removed. :-< |
| 17:33:15 | <systwi_> | Really good thinking though! :-) |
| 17:33:22 | <systwi_> | I'm investigating it a bit further. |
| 17:33:51 | <Nekroschizofrenetyk> | can you pipe it? |
| 17:34:05 | <Nekroschizofrenetyk> | find . -iname |
| 17:34:07 | <Nekroschizofrenetyk> | sry |
| 17:34:28 | <Nekroschizofrenetyk> | find . -iname '*git*' | find -not -ipath '*git*' |
| 17:35:28 | <systwi_> | Ah, yes, you can pipe it! But the command you wrote is _so close_, just not quite there. |
| 17:35:39 | <systwi_> | Remember that one text filtering tool? |
| 17:35:46 | <Nekroschizofrenetyk> | grep? |
| 17:35:56 | <systwi_> | Yep, grep, hehe. :-) |
| 17:36:10 | <systwi_> | I tried that and got it to work with grep. |
| 17:36:21 | <Nekroschizofrenetyk> | how do you -not with grep? |
| 17:37:45 | <systwi_> | find . -iname '*git*' | find -not -ipath '*git*' # I tried this just now and I think what it's doing is reading the file list from stdin (the previous find command) and using those as the sources, which from my testing doesn't return what we're looking for. But, hey, TIL you can do that! :-D |
| 17:38:10 | <systwi_> | > how do you -not with grep? | Good question! That's where the -v flag comes in handy. |
| 17:38:32 | <Nekroschizofrenetyk> | hmmm |
| 17:38:33 | <systwi_> | -v stands for inVerse; inverse the pattern for which you're looking. |
| 17:38:36 | <Nekroschizofrenetyk> | ah |
| 17:38:46 | <Nekroschizofrenetyk> | in most things I've seen it stood for verbose |
| 17:39:09 | <systwi_> | And that's a good observation too! From my experience, about 99% of commands use it for verbosity. |
| 17:39:25 | <systwi_> | In rare cases it's something else, like grep being inverse match. |
| 17:39:41 | <systwi_> | Maybe once I've seen it mean version (print the version number and exit). |
| 17:40:06 | <systwi_> | (tip: grep -V will show the version of grep :-) ) |
| 17:40:32 | <Nekroschizofrenetyk> | oh |
| 17:40:35 | <Nekroschizofrenetyk> | nice |
| 17:41:21 | <Nekroschizofrenetyk> | re the command... I guess -ipath is not possible, so, hmmm....how do we deal with that? |
| 17:41:27 | <systwi_> | Did you want a hint about making a regular expression for grep to filter out paths containing '*git*'? |
| 17:42:07 | <systwi_> | > re the command... I guess -ipath is not possible, so, hmmm....how do we deal with that? | I tried piping `find''s results into `grep' and did get it to work, but I'm also looking up how to achieve this through `find' by itself. |
| 17:42:26 | <systwi_> | `find' can do regex matching, but I'm also trying to see if it can be done some other way. |
| 17:44:10 | <Nekroschizofrenetyk> | find . -iname '*git*' | grep -v '*git*/*' hmmm ummm |
| 17:44:37 | <systwi_> | You're so close! |
| 17:45:08 | <systwi_> | The `find' part is correct, the grep part is very close but slightly off. |
| 17:45:09 | <Nekroschizofrenetyk> | find . -iname '*git*' | grep -v '*git*\/*' |
| 17:45:30 | <systwi_> | Also good thinking, but sadly not quite it. |
| 17:45:57 | <systwi_> | Some characters need escaping to treat them literally in regex, but / doesn't here. |
| 17:46:06 | <systwi_> | *backslash-escaping |
| 17:47:16 | <systwi_> | Hint: .* # . = match any character; * - 0 or multiple matches of the preceding character. |
| 17:48:12 | <Nekroschizofrenetyk> | aah, so * can also be true for absence of character? |
| 17:48:25 | <systwi_> | Correct. |
| 17:48:30 | <systwi_> | I think even in `find' too. |
| 17:48:46 | <Nekroschizofrenetyk> | find . -iname '*git*' | grep -v '*git*/.' |
| 17:49:14 | <systwi_> | Very close, but not quite it, sorry. |
| 17:49:17 | <Nekroschizofrenetyk> | though tbh standalone / shouldn't be there, too |
| 17:49:27 | <systwi_> | Would you like to see what I did? |
| 17:49:30 | <Nekroschizofrenetyk> | yes |
| 17:49:55 | <systwi_> | find . -ipath '*git*' | grep -v '.*git.*/' |
| 17:49:59 | <klea> | ATP when :p |
| 17:50:21 | <systwi_> | (klea: sorry what's ATP?) |
| 17:50:57 | <Nekroschizofrenetyk> | hmmmmmmmm |
| 17:51:59 | <klea> | I made it up, it can be multiple things: Adenosine triphosphate, Advanced Technology Program, Alberta Taciuk process, AT Protocol, AT Protocol, or what I made it up to be ArchiveTeam Programming (but that's probably just -dev, and this isn't suitable there in any case I believe?) |
| 17:52:00 | | Cornelius705 quits [Client Quit] |
| 17:52:06 | <Nekroschizofrenetyk> | why is that? |
| 17:52:38 | <Nekroschizofrenetyk> | ArchiveThatPage.exe |
| 17:53:04 | <systwi_> | Nekroschizofrenetyk: In English, "find, in the current directory (.), all path entries that contain a case-insensitive 'git' matched anywhere within it ('*git*'), then feed those results to `grep', which finds anything that _doesn't_ match '0 or more matches of anything + git + 0 or more matches of anything + path separator', since, anything with a |
| 17:53:04 | <systwi_> | / after it must mean matches are a part of the directory name." |
| 17:54:00 | <systwi_> | ArchiveTeam Progress! |
| 17:54:13 | <klea> | Can I get a TL;DR on what you both are trying to achieve? |
| 17:54:17 | <systwi_> | Progress in ArchiveTeam Programming--oh, a double-meaning one. |
| 17:54:52 | <systwi_> | klea: We're trying to find everything that has 'git' in the name but without 'git' in its parent directories. |
| 17:55:28 | <klea> | find -ipath '*/*git*' -and -not -ipath '*git*/*'? |
| 17:56:02 | <systwi_> | So something like: foo/bar/baz/My_Gitea_Projects.txt , but not foo/bar/project/.git/My_Gitea_Projects.txt . |
| 17:56:12 | <systwi_> | Ooh, trying that one out. |
| 17:56:58 | <Nekroschizofrenetyk> | my focus is off but I;m sure I will get it |
| 17:57:18 | <klea> | No, that wouls also match foo/bar/project/.git even tho not the file. |
| 17:57:26 | <systwi_> | No worries Nekroschizofrenetyk, it's difficult for me to focus too, yes even on my own question. ADD moment. :-< |
| 17:57:35 | <systwi_> | (morning mind) |
| 17:57:42 | <klea> | I guess if you're only looking for non-directories add -and -not -type d. |
| 17:58:00 | <systwi_> | I thought of that too, but what if directories? |
| 17:58:53 | <klea> | They don't fit the exact criteria you asked :p |
| 17:59:12 | <klea> | Since a single SomeGitRepos folder doesn't have 'git' in it's parent name. |
| 17:59:20 | <systwi_> | foo/bar/project/.git/My_Gitea_Projects (directory btw) |
| 17:59:22 | <systwi_> | lol |
| 17:59:49 | <systwi_> | Right, but we're using -i-prefixed flags. |
| 18:00:05 | <systwi_> | So it should still return them anyway. |
| 18:00:07 | <klea> | Wait, you want to match that one or not? |
| 18:00:18 | <klea> | I thought no, because '.git'. |
| 18:00:30 | <klea> | Also, what are you doing that have git repos in .git? |
| 18:00:33 | <systwi_> | <_<; Oops, you're right, I don't want to match that one. |
| 18:01:08 | <systwi_> | foo/bar/project/.git is okay. |
| 18:01:20 | <systwi_> | (I think, aaah, checking again) |
| 18:02:01 | <systwi_> | > Also, what are you doing that have git repos in .git? | It's just an example I made up (and I probably broke the structure lol). |
| 18:02:27 | <systwi_> | Okay let me find the original question I asked, one second. |
| 18:02:42 | <systwi_> | I'm getting confused by my own question. |
| 18:03:06 | <systwi_> | <systwi_> Is there a way to filter results that have a phrase specifically in the path and _not_ a part of the filename? |
| 18:03:18 | <systwi_> | I think that's the best way I described it. |
| 18:04:43 | <systwi_> | So, something like--we'll change it--something like "zebra" somewhere in the directory tree but not in the name of the file itself (with file being anything: regular files, directories, symlinks...just anything at the end of the path) |
| 18:05:17 | <klea> | find -ipath '*zebra*/*' -and -not -iname '*zebra*'? |
| 18:06:40 | | systwi_ facepalm (because of my silliness) |
| 18:06:55 | <systwi_> | Thank you, yes that does work...but I copy+pasted the wrong question. ~_~ |
| 18:07:18 | <systwi_> | 17:21:00 <systwi_> Okay I think this works: find . -ipath '*zebra*' -not -iname '*zebra*' |
| 18:07:18 | <systwi_> | 17:21:47 <systwi_> Now for the inverse: filenames with 'zebra' in them but not in parent directories with 'zebra' in them. |
| 18:07:33 | <systwi_> | (I replaced "git" with "zebra" for simplicity's sake) |
| 18:08:14 | <systwi_> | Serves me right for trying to learn things right as I wake up, haha. |
| 18:09:35 | <systwi_> | abc/zebra/file = bad; abc/def/zebra = good; abc/def/ghi/zebra/jkl/zebra.txt = bad |
| 18:09:51 | <systwi_> | Okay...okay I think that's what I was asking. |
| 18:10:02 | | ducky quits [Ping timeout: 268 seconds] |
| 18:10:34 | <systwi_> | Yes, pretty sure that's it. |
| 18:11:15 | <systwi_> | I'm sorry if I made it too confusing Nekroschizofrenetyk. |
| 18:12:33 | <Nekroschizofrenetyk> | @systwi nah, it deconfuses the evening mind |
| 18:12:53 | | systwi_ likes evening mind more than morning mind :-) |
| 18:13:22 | <Nekroschizofrenetyk> | I'm rather used to the morning one tbh |
| 18:14:29 | <systwi_> | I get into "the zone" a lot better at night (unless I'm really tired, then it's more difficult). |
| 18:15:02 | <systwi_> | I've programmed things from afternoon to the next morning because I could maintain my hyperfocus. |
| 18:15:52 | <Nekroschizofrenetyk> | I hate it, when people tell me "calm down, have some rest, sleep", when I'm in the middle of my hyperfocus attack !@$#@$ |
| 18:16:45 | <systwi_> | Ahh me too! You don't want to sleep because everything is going so well. |
| 18:17:06 | <Nekroschizofrenetyk> | I believe it's better to sacrifice sleep/whatever when you get blessed by hyperfocus, than to make yourself rest and miss that thing |
| 18:17:21 | <systwi_> | ^ Agreed. |
| 18:17:41 | <systwi_> | It's the worst when you _need_ to stop, like for work or school. ~_~ |
| 18:19:13 | <Nekroschizofrenetyk> | several years earlier I probably wouldn't have felt it, but now the lack of sleep is definitely affecting me, though maybe not really so severely, hmm |
| 18:19:41 | <Nekroschizofrenetyk> | past few days I've slept so-so and came up fine |
| 18:19:53 | <Nekroschizofrenetyk> | (though not because of hyperfocus) |
| 18:20:16 | | ducky (ducky) joins |
| 18:22:42 | <systwi_> | I've felt it too here and there. |
| 18:24:08 | <Nekroschizofrenetyk> | btw, do you have any experience with archiving wikis? |
| 18:25:50 | <systwi_> | Only a little bit. Last I recall, WikiApiary can do that (https://www.wikiapiary.com/) but there's also #wikibot / #wikiteam. |
| 18:26:24 | <Nekroschizofrenetyk> | yep, I have on wiki on my mind |
| 18:26:40 | <Nekroschizofrenetyk> | I need to give it some time to get around with |
| 18:26:42 | <systwi_> | https://wiki.archiveteam.org/index.php/WikiTeam https://wiki.archiveteam.org/index.php/WikiApiary |
| 18:26:47 | <Nekroschizofrenetyk> | yes |
| 18:26:57 | <Nekroschizofrenetyk> | I've eve downloaded the |
| 18:27:16 | <Nekroschizofrenetyk> | dumpgenerator.py, though I dind't manage to get it to work |
| 18:28:10 | <systwi_> | I haven't used that before, by the way. |
| 18:28:38 | <systwi_> | IIRC just those two I've used, #wikibot and WikiApiary. |
| 18:28:48 | <systwi_> | It's on my to-do list for sure. |
| 18:29:07 | <Nekroschizofrenetyk> | what I'm concerned is, #wikibot saves to IA but not to WBM |
| 18:33:06 | <systwi_> | I think the only way a wiki would appear in WBM is via ArchiveBot/SPN. :-/ |
| 18:33:23 | <systwi_> | There is an igset for MediaWiki on AB. |
| 18:33:45 | <Nekroschizofrenetyk> | so, maybe, it would be better for me to request it on AB? |
| 18:35:58 | <systwi_> | Hmm, maybe... Typically those are only handled with wiki-specific tools. |
| 18:36:13 | <systwi_> | I think if it's a small wiki it's probably okay. |
| 18:36:27 | <Nekroschizofrenetyk> | http://katalog.czasopism.pl - archive gaps |
| 18:39:48 | <systwi_> | http://katalog.czasopism.pl/index.php/Specjalna:Statystyka |
| 18:40:20 | <Nekroschizofrenetyk> | small webste all in all |
| 18:40:28 | <systwi_> | (T-Eng) Pages (All pages on the wiki, including discussion pages, redirects, etc.) - 39 004 |
| 18:40:57 | <systwi_> | I think it might be okay, but I would check with somebody else first. |
| 18:42:29 | <klea> | I'm going to run it trough #wikibot once the disk stops being full. |
| 18:42:53 | <Nekroschizofrenetyk> | pokechu's already AB-running it |
| 18:43:04 | <systwi_> | Nice. |
| 18:43:09 | <Nekroschizofrenetyk> | klea |
| 18:43:16 | <klea> | ack. |
| 18:43:43 | <systwi_> | Might still be good to get a reusable #wikibot copy though. |
| 18:44:24 | <Nekroschizofrenetyk> | if there's anything I could help with, being a native Polish speaker, that would be awesome |
| 18:46:44 | <systwi_> | Nekroschizofrenetyk: A bit off-topic, but have you played SUPERHOT before? |
| 18:47:28 | <Nekroschizofrenetyk> | no idea what's that, can you describe it? (I'm not that big on video games) |
| 18:47:51 | <systwi_> | It's a first-person shooter where time only moves when you do. |
| 18:48:28 | <Nekroschizofrenetyk> | soooo like a turn-based game |
| 18:48:44 | <Nekroschizofrenetyk> | interesting, though, as it's essentially a freeze frame> |
| 18:48:44 | <systwi_> | I asked because the devs are Polish and (ROT13 spoiler: gurer'f n fbat ng gur raq gung'f va Cbyvfu gung V gubhtug lbh znl unir urneq orsber). |
| 18:48:50 | <Nekroschizofrenetyk> | ?* |
| 18:49:30 | <Nekroschizofrenetyk> | oh no, unfortunately, I'm not gamey, and I couldn't help :( |
| 18:49:30 | <systwi_> | Kind of. The whole world is frozen when you stop (or, like, moves at 1% speed), and you can shoot enemies and literally dodge bullets. |
| 18:50:18 | <systwi_> | It's all okay, I was just wondering if you'd heard the song before. It's a cool eighties one. |
| 18:50:21 | <Nekroschizofrenetyk> | sounds nice, I;ve always valued the option to wind down in vid gnaes |
| 18:50:34 | <Nekroschizofrenetyk> | what song? |
| 18:50:46 | <systwi_> | ^ Me too; fast paced is difficult for me, hehe. |
| 18:50:50 | <systwi_> | https://www.youtube.com/watch?v=AwmRTEPVyxo |
| 18:51:25 | <Nekroschizofrenetyk> | aaah, Republika |
| 18:52:14 | <Nekroschizofrenetyk> | great band, though you might find, they ripped off Killing Joke for instance, a lot |
| 18:54:18 | <Nekroschizofrenetyk> | oh no |
| 18:54:25 | <systwi_> | Oh, I'm surprised I've never heard of them before. |
| 18:54:28 | <Nekroschizofrenetyk> | I'm confusing it with another band |
| 18:54:56 | <Nekroschizofrenetyk> | (I know republika, but the killing joke reference goes to siekiera) |
| 18:59:19 | | Webuser366519 joins |
| 18:59:34 | <systwi_> | Cool, thanks for sharing, I didn't know about them either. |
| 18:59:50 | <klea> | systwi_: Yeah, I put a reminder anyways, I am going to do it later, in any case. |
| 18:59:55 | <Nekroschizofrenetyk> | do you listen to music? |
| 19:00:15 | <Nekroschizofrenetyk> | I'm not a gamer but I suppose you know Hypnospace Outlaw/ |
| 19:00:17 | <systwi_> | Thank you klea, much appreciated. |
| 19:00:19 | <klea> | → #music |
| 19:00:26 | | Webuser366519 is now known as Hyperion-Op |
| 19:00:41 | <klea> | (I suppose here it's fine tbh, it's not like #music was a AT project (it isn't?)) |
| 19:00:45 | <Nekroschizofrenetyk> | there's a separate music channel? :O |
| 19:01:22 | <systwi_> | > Hypnospace Outlaw | I don't know this one, sorry. I don't listen to that much music regularly outside of old game OSTs. |
| 19:01:36 | <systwi_> | Cool, I didn't know there was a dedicated music channel. |
| 19:02:12 | <Nekroschizofrenetyk> | systwi_ it's a game about being a moderator of old Internet. And in the end there's a beautiful archiving twis |
| 19:02:12 | <Nekroschizofrenetyk> | t |
| 19:03:19 | <systwi_> | That sounds pretty neat, I'll have to check it out. :-) |
| 19:03:26 | <Nekroschizofrenetyk> | it's awesome |
| 19:03:34 | <Nekroschizofrenetyk> | it recreates the old internet |
| 19:03:43 | <Nekroschizofrenetyk> | think geocities |
| 19:03:56 | <systwi_> | :-D |
| 19:05:45 | <Nekroschizofrenetyk> | it's like the game for archivists |
| 19:06:38 | | Hyperion-Op is now authenticated as Hyperion-Op |
| 19:06:47 | | Hyperion-Op is now known as Hyperion-SysOps |
| 19:07:07 | | Hyperion-SysOps quits [Client Quit] |
| 19:07:30 | <systwi_> | Have you played it before? |
| 19:08:04 | <Nekroschizofrenetyk> | I have |
| 19:09:12 | <Nekroschizofrenetyk> | it's really interesting |
| 19:12:09 | <systwi_> | I really like the art style: https://media.vgm.io/releases/88/9088/9088-1719402676.jpg |
| 19:12:48 | <multisn8> | dang that rocks |
| 19:13:03 | <Nekroschizofrenetyk> | yeaaah |
| 19:13:29 | <systwi_> | Even the dithering. I _love_ that look. |
| 19:14:11 | | Nekroschizofrenetyk quits [Quit: Ooops, wrong browser tab.] |
| 19:14:55 | | Cornelius705 (Cornelius) joins |
| 19:15:47 | | Nekroschizofrenetyk joins |
| 19:35:37 | | APOLLO03 quits [Quit: .] |
| 19:46:22 | | Cornelius705 quits [Client Quit] |
| 19:47:17 | | Cornelius705 (Cornelius) joins |
| 20:25:12 | | DrowsyCrow joins |
| 21:00:42 | | DrowsyCrow leaves |
| 21:11:23 | | HackMii quits [Remote host closed the connection] |
| 21:11:45 | | HackMii (hacktheplanet) joins |
| 21:37:39 | | pabs quits [Read error: Connection reset by peer] |
| 22:04:10 | <that_lurker> | "Cloudflare flags archive.today as "C&C/Botnet"; no longer resolves via 1.1.1.2" https://news.ycombinator.com/item?id=47474255 |
| 22:07:49 | <klea> | $ curl -s "https://1.1.1.2/dns-query?name=archive.is&type=A" -H "accept: application/dns-json" |
| 22:07:58 | <klea> | JAA: Can you use qwarc to grab that. |
| 22:20:51 | | HackMii quits [Remote host closed the connection] |
| 22:20:51 | | SootBector quits [Remote host closed the connection] |
| 22:21:11 | | HackMii (hacktheplanet) joins |
| 22:21:58 | | SootBector (SootBector) joins |
| 23:40:25 | | pabs (pabs) joins |