Last updated at Fri Sep 6 10:45:28 2019

Candide's factoids

##battleship
##c
##c++
##c-offtopic
##club-ubuntu
##connect4
##posix
##spinach
#bash
#c-offtopic
#cjeopardy
#pbot2
#pbot2-test
#philosophy
global

##battleship


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
k!~krok@unaffiliated/krok 2018/07/02 19:30:05 0 ##battleship is test. nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/04 00:36:23 3 a is /call bomb pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:08:38
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 22:11:17 104 accept is /call battleship accept nil!n@monade.li 2019/06/06 12:32:03
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/04 00:36:18 0 attack is /call bomb nobody
k!~krok@unaffiliated/krok 2018/07/01 00:02:46 2201 b is /call bomb pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:08:38
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 22:42:32 713 board is /call battleship board zautomata!~zautomata@unaffiliated/zautomata 2019/06/17 08:46:48
jp!ayy@youlosethega.me 2018/07/03 19:48:49 1 boarrd is /call board jp!ayy@youlosethega.me 2018/07/03 19:48:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 22:11:07 3885 bomb is /call battleship bomb pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:08:38
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 21:32:06 139 bs is /call battleship iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/01 20:07:37
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 22:11:13 158 challenge is /call battleship challenge zautomata!~zautomata@unaffiliated/zautomata 2019/06/17 08:47:08
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/04 00:45:55 8 commands is /say !bomb to attack the enemy. !board/!specboard to look at the board/spectator board. !quit/!concede to give up. !challenge to challenge somebody. !accept to accept a challenge. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/04 15:59:11 zautomata!~zautomata@unaffiliated/zautomata 2019/06/17 08:46:35
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 14:42:49 2 concede is /call battleship quit zautomata!~zautomata@unaffiliated/zautomata 2019/06/17 08:47:30
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 14:42:36 6 decline is /call battleship decline nai!~naim@nai.im 2018/07/08 16:59:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 14:42:54 0 forfeit is /call battleship quit nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/04 00:43:08 17 help is /say Two players are in an ocean in heavy fog. You can see your own ships. You cannot see the enemy ships. Strategically aim for open ocean to find the enemy! In this simplified IRC Battleship, your ships and the enemy ships share the same map. Ships are horizontal or vertical, and at minimum 3 sections long. Sink all of the enemy's ships first to win! pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/05 11:13:01 Obsdark!~obsdark@unaffiliated/obsdark 2019/08/20 21:02:30
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 00:54:31 7 players is /call battleship players pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/04 00:56:04
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 22:11:22 52 quit is /call battleship quit zautomata!~zautomata@unaffiliated/zautomata 2019/06/17 08:47:40
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 23:57:19 134 score is /call battleship score pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/06 12:43:42
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 01:02:45 3 scores is /call score pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 02:16:37
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 14:06:26 47 specboard is /call battleship specboard tires!~pi@cpe-172-101-20-238.maine.res.rr.com 2018/07/30 18:50:37
k!~krok@unaffiliated/krok 2018/07/02 19:30:14 0 test. is /say test nobody

##c


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
Major-Willard 2005/01/01 09:30:21 169 ! is the unary boolean not operator chrisf!~chrisf@2604:a880:2:d0::20d6:8001 2019/08/07 15:16:52
Random832 2009/12/30 11:06:45 53 !! is /say !! is a common idiom for normalizing booleans - it will turn any nonzero value into 1, and leave zero at 0. For example, !!50 is 1. neildugan!~neil@123.103.50.210.sta.wbroadband.net.au 2019/06/08 19:54:20
Major-Willard 2005/01/04 12:46:46 7 != is the comparison for inequality operator rob``!~rob@gtng-4db046fc.pool.mediaWays.net 2014/02/24 13:05:55
pragma_ 2010/04/09 16:36:16 18 !false is true nai!~naim@monade.li 2019/05/02 16:04:34 nai!~naim@monade.li 2019/05/02 16:02:36
fluter!~fluter@fedora/fluter 2016/07/04 18:31:31 4 !true is false nai!~naim@monade.li 2019/05/02 16:02:15
Major-Willard 2005/01/23 16:42:26 6 " is the character that begins and terminates a string literal gorroth!~pi@unaffiliated/gorroth 2015/10/17 14:58:04
Auris- 2007/12/13 13:01:17 14 # is used to commence a preprocessor directive (include, define, undef, ifdef, ifndef, pragma) and as the stringization operator (#x). koisoke!xef4@epilogue.org 2018/02/25 17:26:59
Auris- 2008/05/23 01:27:55 28 ## is the preprocessor concatenation (token pasting) operator. koisoke!xef4@epilogue.org 2018/02/25 17:26:26
anttil 2009/06/19 16:39:28 70 ##c is /say ##c is for discussion involving the C programming language itself. We do not deal with the whole range of the spectrum. libgtk may be written in C, but this is hardly the proper channel for GTK-related questions. Try #gtk. Likewise, makefiles and autotools: #devtools, assembly: #asm, Xlib: #xlib, C++: #c++, and so on. irf21k!~irf21k@157.49.204.31 2019/08/21 11:14:21
pragma_ 2005/02/21 15:47:57 32 #c is /call ##c qwename!~qwename@unaffiliated/qwename 2017/08/23 04:55:48
PoppaVic 2010/07/11 16:30:31 23 #c++ is not ##C—down the hall, down the stairs, next to the boiler-room—across from ##C-sharp. (##objc is behind the boilers—be careful). edk!edk@spy/edk0 2016/06/09 10:59:15 fluter!~fluter@fedora/fluter 2015/10/27 03:15:37
jp!ayy@youlosethega.me 2018/04/09 19:00:23 3 #pragma- is shorthand for __attribute__((boble)) nil!~n@monade.li 2019/05/26 18:35:31
Major-Willard 2005/01/23 16:29:11 9 $ is a character that has no special meaning esselfe!~bsfc@unaffiliated/esselfe 2017/08/23 17:08:30
Major-Willard 2005/01/23 17:53:56 8 % is the remainder after division operator seanconnery!~HoS@108-79-248-248.lightspeed.cicril.sbcglobal.net 2017/07/08 23:49:19
twkm 2004/12/30 02:17:38 1 %: is digraph alternative for # fluter!~fluter@fedora/fluter 2015/10/27 03:15:47
twkm 2004/12/30 02:17:45 0 %:%: is digraph alternative for ## nobody
twkm 2005/01/01 13:51:56 0 %> is digraph alternative for } nobody
pragma_ 2012/03/15 23:31:35 3 %b is a candide extension written by Wulf \[!~qwename@unaffiliated/qwename 2017/11/17 22:18:08
prec 2004/12/30 02:01:43 4 %d is a *printf format specifier which converts its signed int argument to decimal representation; a *scanf format specifier which parses a decimal representation to its int* argument Luka00!~chatzilla@78-134-48-170.v4.ngi.it 2015/06/30 02:51:10
Random832 2009/12/30 11:00:08 7 %f is /call double aesin!~aesin@81.211.127.109 2017/12/12 05:32:21
pragma_ 2005/01/27 15:28:50 8 %p is the printf/scanf format specifier used to print/read void pointers cousteau!~cousteau@unaffiliated/cousteau 2018/05/29 09:33:20
pragma_ 2005/01/27 15:28:50 27 %zu is the printf format specifier used to print size_t values (sizeof, strlen, etc) dorp!~dorp@89-139-210-198.bb.netvision.net.il 2019/08/21 19:42:40
Major-Willard 2005/01/01 10:00:53 30 & is the bitwise AND binary operator. It is also the unary address-of operator. Maxdamantus!~Maxdamant@2001:470:f078::dead:beef:cafe 2013/11/21 00:49:04 no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/09/02 00:34:16
Major-Willard 2005/01/23 13:22:32 10 && is the McCarthy logical-and binary operator Jumpforce!~alarm@unaffiliated/jumpforce 2018/02/23 06:57:53
prec 2005/02/08 13:34:42 1 &= is the bitwise inclusive-AND assignment operator. The expression (x &= y) is equivalent to (x = x & y) except that the expression x is evaluated only once. ule 2010/11/19 04:32:28
pragma_ 2005/02/02 20:54:31 2 &x->y is The address of the y member of the structure pointed to by x. prec
prec 2005/02/06 14:59:28 8 &x[y] is equivalent to (x+y). Neither the & operator nor the implied * operator (see x[y]) are evaluated. alyptik!ayy@youlosethega.me 2017/09/16 03:34:29
Major-Willard 2005/01/23 16:26:52 3 ' is the character that begins and terminates a character constant MethylatorX!~Methylato@41.238.152.87 2015/09/02 04:14:51
Major-Willard 2005/01/04 17:13:00 1 '' is the delimiter of the start and end of a char pragma- 2012/09/26 10:05:22
Major-Willard 2005/01/23 16:41:03 4 ( is used to commence a grouped expression K0HAX!~K0HAX@c-75-72-143-131.hsd1.mn.comcast.net 2015/05/01 12:58:51
Major-Willard 2005/01/23 16:40:06 6 ) is used to terminate a grouped expression Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/03 09:52:03
Major-Willard 2005/01/01 09:25:19 51 * is the multiplication binary operator. It is also the unary pointer dereference operator. It is also used in declarations to declare a variable which is a pointer to a type: <type> *p; randy408[m]!randy408ma@gateway/shell/matrix.org/x-randy408ma 2019/07/30 06:43:15
fstd!~fstd@unaffiliated/fisted 2015/03/02 10:04:50 0 *(x+y) is syntactic exercise for x[y] nobody
Major-Willard 2005/02/05 20:07:18 0 *= is the operator that multiplies the lvalue [to the left of the *] by the expression [to the right of the =] nobody
Major-Willard 2005/01/01 08:09:20 14 + is the addition binary operator k!~krok@unaffiliated/krok 2019/06/26 12:57:48
Major-Willard 2005/01/08 13:19:33 6 ++ is a unary operator that increments basic types by 1; if it is placed before a variable the value of the expression is: <var> + 1; if it is placed after a variable the value of the expression is: <var> beeman!~beeman@unaffiliated/beeman 2017/04/15 14:13:17
Major-Willard 2005/02/05 19:48:04 0 += is the operator that adds the expression [to the right of the =] to the lvalue [to the left of the +] nobody
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/22 00:43:41 17 , is /say The comma operator takes two operands; the left operand is evaluated as a void expression, and then the right operand is evaluated. There is a sequence point after the evaluation of the left operand. The result of the operand is the type and value of the right operand. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/05 09:46:39 Xatenev!~I@87.190.19.178 2019/08/16 02:38:46
Major-Willard 2005/01/01 08:10:11 18 - is the unary negation operator; the binary subtraction operator porfavordama!556b381e@gateway/web/freenode/ip.85.107.56.30 2017/10/15 02:06:48
Major-Willard 2005/01/08 13:23:53 4 -- is a unary operator that decrements basic types by 1; if it is placed before a variable the value of the expression is: <var> - 1; if it is placed after a variable the value of the expression is: <var> X7123M3-256!~TestName@80.229.124.232 2015/07/15 09:56:51
Major-Willard 2005/02/05 19:52:44 0 -= is the operator that subtracts the expression [to the right of the =] to the lvalue [to the left of the -] nobody
Major-Willard 2005/01/01 09:42:14 36 -> is the operator that dereferences a pointer to permit access to a structure/union member. The expressions (x->y) and ((*x).y) are equivalent. aozt!~aozt@unaffiliated/aozt 2019/04/30 03:08:46
pragma_ 2010/06/07 02:14:53 14 -Wall is not sufficient enough. Use -Wall -Wextra. RicardasSim!~RicardasS@78-63-172-44.static.zebra.lt 2018/06/11 05:27:46
prec 2005/01/22 18:48:17 7 -lm is the standard UNIX linker command line option to link the functions in the math library. Random832!~random@unaffiliated/random832 2016/11/07 16:47:06
pragma_ 2005/02/08 22:08:40 11 -pedantic is a GCC flag that issues all warnings demanded by strict ISO C; rejects most programs that use forbidden extensions; should not be used to check for strict ISO conformance as it only warns for coding practices that _require_ a diagnostic, not everything; loosely supported qwename!~qwename@unaffiliated/qwename 2017/08/04 00:44:10
pragma_ 2005/02/08 22:16:25 19 -std is a GCC flag that is used to specify which C standard to follow when compiling; some valid standards are: c89 (-ansi), c99, gnu89 (default), gnu99 CaZe!~caze@unaffiliated/caze 2014/10/22 14:48:20
Major-Willard 2005/01/01 09:34:24 67 . is /say . might be a decimal point or the beginning of a struct member postfix operator or initialisation designator. Maxdamantus!~Maxdamant@2001:470:f078::dead:beef:cafe 2014/07/13 00:03:18 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/03 14:16:24
prec 2005/01/28 12:16:42 35 ... is an ellipsis; used to mark a function or macro as variadic. variadic macros were added by C99. n-!~n@monade.li 2019/05/07 12:33:35
Major-Willard 2005/01/01 09:24:06 4 / is the division binary operator alyptik!ayy@youlosethega.me 2017/09/04 18:06:10
Major-Willard 2005/02/13 03:18:02 5 // is used to introduce a comment that continues to the end of the line [C99] k!~krok@unaffiliated/krok 2018/01/13 11:39:27
prec 2005/02/05 19:56:13 0 /= is the division assignment operator. The expression (x /= y) is equivalent to (x = x / y) except that the expression x is evaluated only once. nobody
pksadiq!~user@106.208.126.239 2016/07/20 09:01:43 2 /quit is /quit Elronnd!elronnd@slashem.me 2017/10/31 19:32:19
pragma_ 2005/03/26 11:59:42 33 3star is http://c2.com/cgi/wiki?ThreeStarProgrammer cousteau!~cousteau@unaffiliated/cousteau 2018/02/04 11:02:37
pragma- 2012/07/29 21:45:57 1 64bit-errors is http://www.viva64.com/en/a/0065/print/ wlhlm 2013/07/19 15:11:26
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/07 10:40:33 1 6stages is /say The 6 stages of debugging: https://i.imgur.com/FTMlaJT.jpg latch!~latch@unaffiliated/latch 2016/08/23 15:26:20
twkm 2004/12/30 02:18:10 0 :> is digraph alternative for ] nobody
Major-Willard 2005/01/04 16:47:56 5 ; is a statement and declaration terminator jp!ayy@youlosethega.me 2018/01/16 16:02:15
Major-Willard 2005/01/01 09:10:41 7 < is the less than comparison operator Wulf!~Wulf@unaffiliated/wulf 2015/03/08 12:18:45
twkm 2004/12/30 02:17:25 1 <% is digraph replacement for { phao 2011/01/22 03:51:16
twkm 2004/12/30 02:18:02 3 <: is digraph replacement for [ pragma_ 2011/01/23 19:06:50
prec 2005/02/09 12:02:30 9 << is the binary left shift operator allisio!~allisio@24-181-54-41.dhcp.gnvl.sc.charter.com 2017/03/16 15:56:51
Major-Willard 2005/01/01 09:11:33 1 <= is the less than or equal to comparison operator nylon100!~rany@bzq-79-182-7-58.red.bezeqint.net 2013/11/07 15:58:39
Major-Willard 2005/01/01 08:12:29 5 == is the comparison for equivalence operator oldlaptop!~quassel@45.63.78.126 2018/07/19 16:34:23
Jafet 2009/04/06 04:28:55 14 > is /say > is the greater than comparison operator qwename!~qwename@unaffiliated/qwename 2017/08/31 01:36:01
Major-Willard 2005/01/01 09:12:18 0 >= is the greater than or equal to comparison operator nobody
Major-Willard 2005/02/12 16:07:27 5 >> is the binary right shift operator Left_Turn!~Left_Turn@unaffiliated/turn-left/x-3739067 2014/02/15 08:12:55
Quetzalcoatl_ 2009/03/14 14:35:16 81 ? is a question mark. Stop staring stupidly off into space with a question mark above your head; wipe that drool off your chin and make an intelligent query. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/14 13:55:04 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/14 13:55:09
infobahn 2005/01/05 03:41:55 15 ?: is the conditional operator; <e1> ? <e2> : <e3> if <e1> is true, the operator evaluates and yields <e2>; otherwise it evaluates and yields <e3> pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/12/24 21:02:36 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/26 14:17:31
twkm 2004/12/30 01:58:13 4 ??! is trigraph replacement for | dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/02/15 04:55:39
twkm 2004/12/30 01:57:53 1 ??'' is trigraph replacement for ^ kate!~kate@212.74.13.142 2016/10/23 08:04:15
twkm 2004/12/30 01:57:24 0 ??( is trigraph replacement for [ nobody
twkm 2004/12/30 01:57:47 1 ??) is trigraph replacement for ] pragma_
twkm 2004/12/30 01:58:23 0 ??- is trigraph replacement for ~ nobody
twkm 2004/12/30 01:57:40 4 ??/ is trigraph replacement for \ jp!ayy@youlosethega.me 2018/05/06 18:16:36 jp!ayy@youlosethega.me 2018/05/06 18:16:02
twkm 2004/12/30 01:58:00 3 ??< is trigraph replacement for { pragma_ 2011/02/16 14:10:39
twkm 2004/12/30 01:57:12 2 ??= is trigraph replacement for # pragma_
twkm 2004/12/30 01:58:06 2 ??> is trigraph replacement for }; digraph replacement for } pragma_
Major-Willard 2005/03/18 21:25:18 39 B is the programming language which was the precursor of C ; http://en.wikipedia.org/wiki/B_programming_language pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/01 00:02:30
pragma_ 2005/02/12 17:34:46 21 C/C++ is a misnomer. These two languages are completely different languages with each having its own standard. C++ is not a "superset" of C. For C++ questions, please join #C++ pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/29 17:59:49 marchelzo!~marchelzo@unaffiliated/marchelzo 2017/02/03 06:58:40
pragma_ 2008/01/06 14:45:30 9 CARM is /call H&S OldDog!~Le@ip-83-134-247-209.dsl.scarlet.be 2014/08/24 06:24:28
PoppaVic 2008/02/11 09:53:59 2 CE is Unix system calls and subroutines using C: http://www.cs.cf.ac.uk/Dave/C/CE.html PoppaVic
defrost 2004/12/29 22:54:45 38 CHAR_BIT is #include <limits.h> - maximum value for the number of bits used to represent an object of type char. - >= 8 dho!~dho@veep.9vx.org 2018/05/29 10:59:13
defrost 2004/12/29 22:54:45 1 CHAR_MAX is #include <limits.h> - maximum value for type char. Its value is: SCHAR_MAX if char represents negative values, UCHAR_MAX otherwise. - >= 127 s00p 2010/10/27 07:55:04
defrost 2004/12/29 22:54:45 2 CHAR_MIN is #include <limits.h> - minimum value for type char. Its value is: SCHAR_MIN if char represents negative values, zero otherwise. - <= 0 qwename!~qwename@unaffiliated/qwename 2017/08/28 03:20:35
Feel1E6dOLARZ!~uuhimhere@1.9.98.51 2015/03/28 03:12:30 3 Callbacks is the informal name given to a technique where a function takes in, as arguments, other functions by way of pointers allowing access to multiple functions of the same prototype (per argument). In essence it provides, for each passed argument, algorithm-agnostic function switching/access k!~krok@unaffiliated/krok 2018/02/24 18:58:54
LordOllie 2007/04/19 09:00:19 6 CnotC++ is /say C is not a subset of C++ Vigud!uid1143@gateway/web/irccloud.com/x-lsqwccsadxnazljl 2013/10/18 11:55:54
pragma- 2012/10/18 06:18:45 28 ENOQUESTION is /say Error: No question detected. Please ask a question. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/28 10:13:29
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/27 05:53:08 11 ENOSENSE is /say Error: That makes no sense. esselfe!~bsfc@unaffiliated/esselfe 2017/08/27 23:40:57
infobahn 2005/01/01 08:22:32 73 EOF is an integer constant expression, with type int and a negative value, that is returned by several functions to indicate end-of-file (ISO/IEC 9899:1999 7.19.1p3). It is NOT a char. It is NOT a byte that is stored at the end of every file. Wulf!~Wulf@unaffiliated/wulf 2019/07/22 07:50:10
mauke 2005/01/11 03:42:56 1 EXIT_FAILURE is a macro defined in <stdlib.h> whose value can be passed to exit() or returned from main() to indicate unsuccessful termination phale!~synt@unaffiliated/glimmer 2017/03/13 09:41:08
mauke 2005/01/11 03:40:03 3 EXIT_SUCCESS is a macro defined in <stdlib.h> whose value can be passed to exit() or returned from main() to indicate successful termination nai!~naim@nai.im 2018/05/27 00:44:14
heina 2005/02/28 16:14:51 257 H&S is "C - A Reference Manual" by Harbison & Steele; a reference for C on par with K&R - http://www.amazon.com/Reference-Manual-Samuel-P-Harbison/dp/013089592X u0_a136!~u0_a136@ip-109-42-2-145.web.vodafone.de 2018/04/15 16:17:21
twkm 2004/12/29 17:20:16 12 INT_MAX is #include <limits.h> - INT_MAX - maximum value of an int object, at least +32767 m0shbear!~011899988@servbox.moshbear.net 2016/02/18 14:51:06
twkm 2004/12/29 17:20:27 2 INT_MIN is #include <limits.h> - INT_MIN - minimum value of an int object, at most -32767 marchelzo!~marchelzo@unaffiliated/marchelzo 2016/11/24 14:55:38 marchelzo!~marchelzo@unaffiliated/marchelzo 2016/11/24 14:55:21
Chris 2010/07/09 02:36:23 999 K&R is The C Programming Language, 2nd edition, by Kernighan and Ritchie -- http://wayback.archive-it.org/5263/20150203070038/http://cm.bell-labs.com/cm/cs/cbook/ -- errata: http://www.iso-9899.info/2ediffs.html edk!~edk@spy/edk0 2015/08/30 18:27:09 caze!~caze@unaffiliated/caze 2019/07/24 14:49:30
meta-coder 2012/02/29 10:02:58 6 LLVM is a compiler infrastructure written in C++ -- http://llvm.org/ esselfe!~bsfc@unaffiliated/esselfe 2018/07/10 14:40:37
twkm 2004/12/29 17:22:26 0 LONG_MAX is #include <limits.h> - LONG_MAX - maximum value of a long int object, at least +2147483647 nobody
twkm 2004/12/29 17:22:12 0 LONG_MIN is #include <limits.h> - LONG_MIN - minimum value of a long int object, at least -2147483647 nobody
twkm 2004/12/30 00:23:03 1 MB_CUR_MAX is #include <limits.h> - maximum number of bytes in a mult-byte character for an extended character in the current locale, which is never greater than MB_LEN_MAX. rob`` 2013/07/31 05:51:52
defrost 2004/12/29 22:55:06 0 MB_LEN_MAX is #include <limits.h> - maximum number of characters that constitute a multibyte character in any supported locale. Its value is >= MB_CUR_MAX. nobody
Major-Willard 2005/01/01 08:17:42 129 NULL is an (implementation-defined) macro expanding to a null pointer constant, which is any zero-value integer constant expression, possibly cast to void *. Such an expression has a special meaning in the context of pointer expressions to, for example, produce null pointers or test if other pointers are null pointers. Maxdamantus!~Maxdamant@2001:470:f078::dead:beef:cafe 2013/11/21 00:43:55 lambda-11235!~lambda-11@2600:1010:b11f:f15f:7758:c494:24d3:cca6 2018/08/09 20:18:47
pragma_ 2010/05/08 10:44:51 1 ObfsC is http://www.cs.bgu.ac.il/~omri/Humor/ObfsC.html -- What were you saying about Perl, again? pragma_
kulp 2011/07/22 16:28:23 5 PoppaVic is PoppaVic. That is all that can be said. SwampySeb!~Sebastian@pa49-197-181-107.pa.qld.optusnet.com.au 2018/04/07 20:37:56
CaZe!~caze@174.136.103.226 2013/11/04 15:49:20 0 REI is Recreational Equipment Inc. nobody
defrost 2004/12/29 22:55:07 0 SCHAR_MAX is #include <limits.h> - maximum value for type signed char. - >= 127 nobody
defrost 2004/12/29 22:55:07 1 SCHAR_MIN is #include <limits.h> - minimum value for type signed char. - <= -127 cousteau 2011/10/26 12:37:49
defrost 2004/12/29 22:55:24 0 SHRT_MAX is #include <limits.h> - maximum value for type short. - >= 32,767 nobody
defrost 2004/12/29 22:55:24 0 SHRT_MIN is #include <limits.h> - minimum value for type short. - <= -32,767 nobody
pragma_ 2011/02/15 14:18:44 261 UB is /say Undefined behavior is behavior for which the C standard does not impose any requirements. This is to allow C the freedom to be implemented on systems with different architectures. Programs invoking undefined behavior may appear to compile and even run without errors at first, only to fail on another system, or even at a later time. If you want to write reliable code, don't use such behaviors. pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/11/14 17:45:25 X-Scale!~ARM@253.52.54.77.rev.vodafone.pt 2019/08/11 16:15:08
defrost 2004/12/29 22:55:24 0 UCHAR_MAX is #include <limits.h> - maximum value for type unsigned char. - >= 255 nobody
twkm 2004/12/29 17:20:56 2 UINT_MAX is #include <limits.h> - UINT_MAX - maximum value of an unsigned int object, at least 65535 CaZe!~caze@unaffiliated/caze 2014/11/30 15:47:19
twkm 2004/12/29 17:22:46 3 ULONG_MAX is #include <limits.h> - ULONG_MAX - maximum value of an unsigned long int object, at least 4294967295 NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 09:23:41
pragma_ 2011/02/15 14:27:29 19 USB is /say Unspecified behavior is behavior for which the C standard provides two or more possibilities, and imposes no further requirements on which behavior is chosen in any instance. Not to be confused with undefined behavior or implementation dependent behavior. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/05 15:59:50
defrost 2004/12/29 22:55:35 0 USHRT_MAX is #include <limits.h> - maximum value for type unsigned short. - >= 65,535 nobody
pragma_ 2007/11/05 03:06:16 20 [] is the array subscript operator. It is also part of declarator syntax. The expressions x[y] and *(x + y) are equivalent. nitrix!~nitrix@unaffiliated/nitrix 2014/07/18 08:07:45 nitrix!~nitrix@unaffiliated/nitrix 2014/07/18 10:04:36
Major-Willard 2005/01/01 10:14:31 12 \ is the line continuation character; used in strings to specify special characters; used in character constants to specify special characters; when followed by u or U in C99, is used to specify a universal character name for use in string constants, character constants, or identifiers. alyptik!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/07/04 18:21:08
Major-Willard 2005/01/01 08:04:43 27 ^ is the bitwise exclusive OR (XOR) binary operator pphysch!~pphysch@155.101.16.198 2019/06/17 14:57:59
mauke 2005/01/16 00:18:31 70 _ is /say All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use. All identifiers that begin with an underscore are always reserved for use as identifiers with file scope in both the ordinary and tag name spaces. (ISO 9899:1999, 7.1.3) Don't use such identifiers. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/26 09:14:48
pragma- 2013/06/08 07:51:57 6 _Generic is http://www.robertgamble.net/2012/01/c11-generic-selections.html Xatenev!~I@87.190.19.178 2019/08/12 09:21:12
nitrix!~nitrix@unaffiliated/nitrix 2013/08/10 09:18:32 8 abcd is /say (a) What is your goal exactly? (b) What have you tried? (c) What are you expecting? (d) What happened instead? pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/10 14:41:11
s00p 2010/05/05 05:53:48 7 address is /say C has pointer types and addresses (or pointer values). foo x; &x results in an address that points to an object. foo *y; y is an instance of a pointer type. Instances of pointer types do not magically point to objects. They must be assigned to before being used, for example: y = &x; oxymoron93!d43e266a@gateway/web/cgi-irc/kiwiirc.com/ip.212.62.38.106 2018/03/08 00:49:48
fstd!~fstd@unaffiliated/fisted 2017/05/31 05:16:45 40 airport is /say ${arg[0]} has been airported ${arg[1:]} (flight id ${digits}${digits}${digits}${digits}${digits}) pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 14:23:28
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/23 11:09:07 10 align_snippet is /say A code sample that demonstrates taking care of the alignment of mixture of types: http://www.iso-9899.info/wiki/Alignment dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/03 04:33:36
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/19 18:45:35 4 alignof_ is /say alignof_() is a macro for computing the alignment of a type. C11 introduces the alignof operator. #define alignof_(type) offsetof(struct { char c; type m; }, m) dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/06/15 11:39:04
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/01/29 12:15:14 8 allyoueverwantedtoknowaboutgoto is http://david.tribble.com/text/goto.html FManTX!~fooman@87-93-41-167.bb.dnainternet.fi 2017/04/15 10:59:49
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/08 00:36:07 1 amd1 is http://www.lysator.liu.se/c/na1.html camthesaxman!~chatzilla@107-205-135-122.lightspeed.nworla.sbcglobal.net 2016/11/27 22:52:35
pragma`!~chaos@unaffiliated/pragmatic-chaos 2016/02/28 01:15:22 57 analyze is /call clang --analyze dorp!~dorp@89-139-210-198.bb.netvision.net.il 2019/08/21 12:36:09
doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/09/26 18:53:52 5 annie is /say Annie, are you ok? Annie, are you ok? Are you ok, Annie? Akuli!~akuli@mobile-access-bcee43-27.dhcp.inet.fi 2019/07/26 12:26:55
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/16 08:43:22 7 anonymousstruct is /say Anonymous structure (C11) by definition is an unnamed member that has no tag. See C11 6.7.2.1p13 dorp!~dorp@93-172-96-162.bb.netvision.net.il 2019/08/11 09:14:20
Cin 2007/09/24 18:34:06 2 ansispec is www.nirvani.net/docs/ansi_c.pdf eboy 2012/08/16 02:33:53
pragma_ 2007/10/18 12:40:07 3 ansispecpdf is /call standard pragma_
fstd!~fstd@unaffiliated/fisted 2016/12/06 12:16:53 18 app is /call fact fstd!~fstd@unaffiliated/fisted 2019/04/13 13:25:16
fstd!~fstd@unaffiliated/fisted 2016/12/06 12:16:07 16 appadd is /call factadd fstd!~fstd@unaffiliated/fisted 2017/10/02 06:58:03
fstd!~fstd@unaffiliated/fisted 2016/12/06 12:16:26 19 appalias is /call factalias fstd!~fstd@unaffiliated/fisted 2017/09/08 16:30:41
fstd!~fstd@unaffiliated/fisted 2016/12/06 12:16:37 35 appchange is /call factchange fstd!~fstd@unaffiliated/fisted 2019/04/13 13:30:29
fstd!~fstd@unaffiliated/fisted 2016/12/06 12:19:37 13 appoid is /call factoid nai!~naim@monade.li 2019/04/08 14:26:59
fstd!~fstd@unaffiliated/fisted 2016/12/06 12:19:54 5 appoids is /call factoids jp!ayy@youlosethega.me 2018/01/19 00:15:09
fstd!~fstd@unaffiliated/fisted 2016/12/06 13:52:44 38 appshow is /call factshow Learath2!~learath2@unaffiliated/learath2 2019/06/03 17:34:24
BenGoldberg!~BenGoldbe@ool-18bca78c.dyn.optonline.net 2017/04/01 09:14:24 4 april1 is The best way to sort text is like this: https://gist.github.com/BenGoldberg1/b9b510be84dedf13bfe3 m0shbear!~011899988@servbox.moshbear.net 2018/04/02 15:17:06
prec 2004/12/30 00:56:31 8 argc is the traditional name of the first parameter to main(); argc is non-negative and gives the number of command line arugments (including the program name). aozt!~aozt@unaffiliated/aozt 2019/08/27 06:42:41
prec 2004/12/30 00:57:45 19 argv is the traditional name of the second parameter to main(); argv[argc] == NULL; if argc>0 argv[0] is the program name. if argc>1, argv[1] through argv[argc-1] are the command line arguments. aozt!~aozt@unaffiliated/aozt 2019/08/27 06:42:46
Wulf_ 2009/07/15 23:42:11 50 array is /say An array type describes a contiguously allocated nonempty set of objects with a particular member object type, called the element type. pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/10/12 23:23:20 korans!~korans@83.137.252.187 2018/02/19 21:48:32
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/19 18:43:56 0 array_len is /say array_len() is a common function-like macro for computing the number of elements of an object with an array type (shouldn't be used with pointer types). #define array_len(a) (sizeof (a) / sizeof *(a)) e!e@enucs/spy.edk 2018/07/31 07:34:08 nobody
pragma_ 2005/01/17 20:28:15 55 arrays is /say Arrays and pointers: http://www.eskimo.com/~scs/C-faq/s6.html fizzie!fis@unaffiliated/fizzie 2017/07/18 15:07:39
Wulf_ 2009/10/31 13:40:22 12 aryptr is http://c-faq.com/aryptr/index.html fizzie!fis@unaffiliated/fizzie 2017/07/18 15:07:53
atk!~Arch-TK@fsf/member/Arch-TK 2017/01/26 11:31:05 10 aspfb is /say https://docs.spring.io/spring/docs/2.5.x/javadoc-api/org/springframework/aop/framework/AbstractSingletonProxyFactoryBean.html atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/01/21 09:59:02
dave0!~dave@32.060.dsl.syd.iprimus.net.au 2018/03/11 21:45:50 7 asprintf is char *asprintf(const char *fmt, ...) { va_list ap; va_start(ap, fmt); int b = vsnprintf(0, 0, fmt, ap) + 1; va_end(ap); va_start(ap, fmt); char *a = malloc(b); if(a != 0) vsnprintf(a, b, fmt, ap); va_end(ap); return a; } dave0!~dave0@069.d.003.ncl.iprimus.net.au 2019/06/01 18:14:53
guidj0s 2011/12/05 14:31:20 26 atoi is evil. It does no overflow checking, handles unsigned numbers poorly, and handles strings containing trailing characters (like ``123abc'') poorly. Use strtol() instead. fstd!~fstd@unaffiliated/fisted 2014/06/12 08:36:27 masoudd!~masoudd@5.116.26.205 2017/01/16 11:45:00
pragma- 2012/08/23 15:10:30 18 auto is /say The `auto` keyword specifies that the object has automatic storage duration (which is the default storage duration of objects, hence its use is redundant and rare) ski!~ski@remote11.chalmers.se 2019/08/02 08:02:48
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/08 16:15:36 0 avoidingvulns is /say Guidance to Avoiding Vulnerabilities in Programming Languages: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1583.pdf nobody
kurahaupo!~kurahaupo@2002:ca1b:c76f:2::1a0b:1 2019/08/28 10:44:23 0 barometer is /say Question: write a C program that uses observations of a barometer to compute the height of a building. Answer: #include <physics.h> int main(){ double t; puts("how long did it take the barometer to fall from the roof to the ground (in second)?" ); scanf("%g" , &t); printf("The building is %f metres high\n" , t*t*9.8065/2.0); } pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/28 10:49:00 nobody
Major-Willard 2005/02/03 18:36:14 2 bcopy is way cool, but it's more portable to use memcpy fluter!~fluter@fedora/fluter 2016/11/16 23:27:54
s00p 2011/08/07 21:43:22 3 bcsllc-steve is /say See 'boring' pixlark!~pixlark@cpe-69-204-133-28.nycap.res.rr.com 2017/07/30 19:53:09
pragma_ 2010/07/08 04:53:40 0 bdwgc is http://www.hpl.hp.com/personal/Hans_Boehm/gc/ nobody
GeorgeJ 2012/02/07 02:52:06 22 beej is /say Beej's Guide to Network Programming -- Using Internet Sockets is at http://beej.us/guide/bgnet/ jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/07/30 03:30:28
snhmib 2008/03/31 13:46:26 0 beejc is http://beej.us/guide/bgc/ nobody
nitrix!~nitrix@unaffiliated/nitrix 2013/07/31 09:55:34 13 better is /say A best practice is a method or technique that has consistently shown results superior to those achieved with other means. GlidingHorse!~GlidingHo@gateway/tor-sasl/glidinghorse 2018/06/29 10:27:16
prec 2005/01/22 17:49:59 236 binky is /say The Binky Pointer Fun Video: http://cslibrary.stanford.edu/104/ -- YouTube version: http://www.youtube.com/watch?v=6pmWojisM_E -- despite the video's claim, the information provided is by no means complete for understanding pointers. dho!~dho@veep.9vx.org 2018/07/19 15:43:23 oldlaptop!~quassel@45.63.78.126 2018/07/19 14:57:40
s00p 2010/10/28 14:33:21 12 bit is /say A bit is a unit of data storage large enough to hold an object that may have one of two values. It need not be possible to express the address of each individual bit of an object. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/30 13:47:09
Chris 2009/10/26 21:56:23 60 bithacks is http://graphics.stanford.edu/~seander/bithacks.html cousteau!~cousteau@unaffiliated/cousteau 2018/05/12 13:43:59
Random832 2009/10/10 17:22:18 17 bitwise is /say http://web.archive.org/web/20131001100601/http://www.codersger.de/mags/cscene/CS9/CS9-02.html jp!ayy@youlosethega.me 2018/01/12 15:44:36 toq!9d31c9ab@gateway/web/freenode/ip.157.49.201.171 2018/05/22 05:42:02
pragma_ 2007/05/18 09:12:56 1070 book is /say See http://www.iso-9899.info/wiki/Books for some useful book recommendations, including free online resources!

with_args: /me points accusingly at $args, &quot;Where is your book?!&quot; See <a href='http://www.iso-9899.info/wiki/Books'>http://www.iso-9899.info/wiki/Books</a> for some useful book recommendations, including free online resources.
edk!edk@unaffiliated/edk 2013/12/04 15:27:54 gl!~x@pwn.lu 2019/06/08 02:44:08
dorp!~dorp@84.111.138.241 2017/12/28 10:30:02 16 bookhandy is /say It's recommended to have a proper C book handy so one could use it as a quick goto reference. dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/08/06 17:05:33
twkm 2004/12/29 19:41:41 1048 books is /say See http://www.iso-9899.info/wiki/Books for some useful book recommendations, including free online resources! edk!edk@unaffiliated/edk 2013/12/16 12:43:10 othias!504e056a@80.78.5.106 2019/09/06 01:04:51
s00p 2011/08/07 21:43:07 11 boring is /say See 'bcsllc-steve' c8bitglitch!~c8bitglit@fg1-ta.westat.com 2018/02/12 10:47:45
boru!~boru@unaffiliated/boru 2014/07/27 09:19:55 24 borucomfort is /call cc char*acts[]={"subjects %s to scaphism", "eats %s", "shits on %s's face"};srand(time(0));printf(acts[rand()%(sizeof acts/sizeof *acts)], "$args"); pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/12 15:31:14 jp!ayy@youlosethega.me 2017/12/26 16:44:44
dansan!~daniel@2600:1700:be30:d00::49 2017/12/27 23:04:17 1 brakes is The automobile brake was not invented until 1895. Before this, someone had to remain in the car at all times, driving in circles until passengers returned from their errands. dansan!~daniel@2600:1700:be30:d00::49 2018/01/24 15:56:55
Major-Willard 2005/01/04 17:30:15 6 break is the statement used terminate the currently executing block Ellenor!ellenor@unaffiliated/ellenor 2017/08/17 02:27:17
prec 2005/01/04 13:15:42 64 byte is defined by the C standard as an addressable unit of storage large enough to hold a character value. The char type is byte-sized and is at least 8 bits wide. CHAR_BIT in <limits.h> defines the byte size for any given implementation. The term "byte" is often used to mean 8 bits; however, the term "octet" is preferred. dho!~dho@veep.9vx.org 2018/04/27 18:36:35 dorp!~dorp@85-250-61-34.bb.netvision.net.il 2019/07/01 10:21:24
kate!~kate@unaffiliated/kate 2015/01/11 12:50:33 36 byteorder is /say http://commandcenter.blogspot.co.uk/2012/04/byte-order-fallacy.html dho!~dho@veep.9vx.org 2018/06/27 10:49:26
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/25 12:25:17 12 c is /say This is C. scientes!~shawn@unaffiliated/scientes 2019/06/27 19:11:09
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/07/29 00:16:09 3 c# is /say For C# please go to ##csharp. nai!~naim@nai.im 2018/06/10 05:59:52
NeverDream 2005/02/16 12:17:09 194 c++ is /say If you are using a C++ compiler then your code is not C -- even if you're only using the "C subset". As soon as you invoke a C++ compiler instead of a C compiler, all the rules and idiosyncrasies of the C++ specification come into play, which have subtle differences in certain semantics. Please ask ##c++ or switch to a C compiler. pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/05/15 14:48:28 nlu!uid374721@gateway/web/irccloud.com/x-uid374721 2019/07/22 18:34:38
PoppaVic 2008/02/28 10:49:13 8 c++diffs is http://david.tribble.com/text/cdiffs.htm dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/02/05 17:32:27
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/08 00:22:53 8 c.vim is /call c99vim whoisxy!~whoisxy@82.112.144.183 2017/08/01 04:47:57 whoisxy!~whoisxy@82.112.144.183 2017/08/01 04:48:04
PoppaVic 2009/09/06 08:29:14 15 c/c++ is http://david.tribble.com/text/cdiffs.htm marchelzo!~marchelzo@unaffiliated/marchelzo 2017/02/22 17:06:55
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:35:43 57 c1 is /say C Aphorism 1: The questioner's first description of the problem/question will be misleading. atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/10/30 14:27:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:44:52 11 c10 is /say C Aphorism 10: The newbie will not accept the answer you give, no matter how right it is. brimonk!~brian@unaffiliated/brimonk 2017/01/03 21:18:03
pragma_ 2012/01/03 18:50:54 2133 c11 is /call c1x

with_args: /call c11std
TheDcoder!~TheDcoder@unaffiliated/thedcoder 2019/09/05 22:09:27
pragma_ 2012/01/03 19:08:25 7 c11diffs is /call c1xdiffs pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/05/01 15:47:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/31 04:52:44 2 c11status is http://gcc.gnu.org/wiki/C11Status koisoke!xef4@epilogue.org 2018/02/02 17:02:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/11/25 11:14:13 0 c11threads is /say Trivial C11 threads implementation over pthreads: https://github.com/jtsiomb/c11threads nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:54:38 16 c12 is /say C Aphorism 12: The newbie will think they are smarter than they really are. TheDcoder!~TheDcoder@unaffiliated/thedcoder 2018/05/29 02:55:05
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 08:11:50 22 c13 is /say C Aphorism 13: The newbie will fail to recognize undefined behavior, and will wrongly think that their program is correct because it appears to work. pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 08:12:04 korans!~korans@93.191.203.83 2018/06/27 03:31:30
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/07/03 20:02:28 9 c14 is /say C Aphorism 14: The more the questioner attempts to describe their problem, the less coherent their description becomes. pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/07/08 16:43:41 RicardasSim!~RicardasS@78-63-172-44.static.zebra.lt 2019/07/08 13:42:16
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/17 02:56:53 3 c15 is /say C Aphorism 15: When multiple people respond to the questioner's problem, the questioner will focus on the person giving incorrect advice and ignore everybody else. pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/17 02:57:41 brimonk!~brian@unaffiliated/brimonk 2017/01/03 21:18:44
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/07/01 02:00:28 24 c17 is /say C17 was expected to incorporate TCs (Technical Corrigenda) and to be released by the end of 2017, since it didn't- it should be called C18. dorp!~dorp@84.111.138.241 2018/01/02 18:10:23 RicardasSim!~RicardasS@78-63-172-44.static.zebra.lt 2019/07/08 13:48:14
pragma_ 2011/01/27 00:17:43 267 c1x is /say C1X/C11 draft: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf - C1X Charter: http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1250.pdf - C1X Overview: http://en.wikipedia.org/wiki/C1X - Changes from C99: http://en.wikipedia.org/wiki/C1X#Changes_from_C99 - C Overview: http://en.wikipedia.org/wiki/C_programming - HTML version: http://port70.net/~nsz/c/c11/n1570.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/15 08:13:51 AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:36:47
pragma_ 2012/01/03 19:08:16 8 c1xdiffs is http://en.wikipedia.org/wiki/C1X#Changes_from_C99 and http://www.iso-9899.info/n1570.html#FOREWORD.p6 pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/05/01 15:47:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:38:16 30 c2 is /say C Aphorism 2: All examples given by the questioner will be incomplete, misleading, broken, wrong, and/or not representative of the actual question. atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/10/30 14:27:54
pragma_ 2011/01/27 20:35:44 19 c2eng is /say C-to-English-and-English-to-C translators: http://www.cs.cmu.edu/~dst/DeCSS/Baccash/ alyptik!ayy@youlosethega.me 2017/09/16 16:07:41
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/18 10:41:26 20 c2x is /say C2x Charter: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2086.htm pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/02/04 15:19:02 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/09 13:01:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:39:06 22 c3 is /say C Aphorism 3: The questioner will not read and apply the answers they are given but will instead continue to practice c1 and c2. BCMM!~BCMM@unaffiliated/bcmm 2019/05/07 13:54:10
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:40:57 16 c4 is /say C Aphorism 4: The ignorant will continually mis-educate the questioner. BCMM!~BCMM@unaffiliated/bcmm 2019/04/12 16:09:20
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:41:19 15 c5 is /say C Aphorism 5: When given a choice of solutions, the questioner will always choose the wrong one. brimonk!~brian@unaffiliated/brimonk 2017/01/03 21:17:19
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:42:05 14 c6 is /say C Aphorism 6: The questioner will always find a reason to say, "It doesn't work." jp!ayy@youlosethega.me 2018/02/23 10:36:13
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:43:21 14 c7 is /say C Aphorism 7: The questioner will paste code and say "I have a problem" or "It doesn't work" without any further information or description of the problem. dmc!~dmc@unaffiliated/polyzen 2018/02/14 20:56:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:43:41 24 c8 is /say C Aphorism 8: The more beginner they are, the more likely they are to be overcomplicating it. pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:53:35 zalt_!~lambda443@unaffiliated/lambda443 2019/05/03 16:09:24
Wulf4 2009/03/12 05:41:25 217 c89 is /say C89/C90 draft: http://port70.net/~nsz/c/c89/c89-draft.html or http://flash-gordon.me.uk/ansi.c.txt or http://web.archive.org/web/20050207005628/http://dev.unicals.com/papers/c89-draft.html - C Overview: http://en.wikipedia.org/wiki/C_programming pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/01/21 17:58:49 othias!504e0569@gateway/web/freenode/ip.80.78.5.105 2018/08/01 05:48:20
umopepisdn` 2010/02/12 15:01:53 5 c89rationale is /say Draft ANSI C Rationale: http://www.scribd.com/doc/16306895/Draft-ANSI-C-Rationale fizzie!fis@unaffiliated/fizzie 2014/09/02 07:06:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/18 07:44:23 15 c9 is /say C Aphorism 9: The questioner will always have some excuse for doing it wrong. brimonk!~brian@unaffiliated/brimonk 2017/01/03 21:17:58
pragma_ 2012/01/03 18:57:02 20 c90 is /call c89 korans!~korans@5.42.131.31 2018/06/01 07:46:20
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/08 00:37:03 1 c94 is c89 plus normative addendum 1 ( http://www.lysator.liu.se/c/na1.html ); sometimes referred to as c95. FUZxxl!~fuz@d00m.org 2014/06/02 04:21:37
Cin 2007/09/21 19:08:02 2 c9888 is www.nirvani.net/docs/ansi_c.pdf pragma_
Cin 2007/09/21 19:08:54 3 c9899 is www.nirvani.net/docs/ansi_c.pdf pragma_
pragma_ 2012/01/03 18:51:52 501 c99 is /say C99 + TC1,2,3 working paper: http://open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf - C99 Overview: http://en.wikipedia.org/wiki/C99 - Changes from C89/C90: http://home.datacomm.ch/t_wolf/tw/c/c9x_changes.html - C Overview: http://en.wikipedia.org/wiki/C_programming - HTML version: http://port70.net/~nsz/c/c99/n1256.html

with_args: /call c99std
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/15 08:14:30 dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/01 06:07:33
pragma_ 2012/01/03 19:09:01 2 c99diffs is /call c9xdiffs pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/05/01 15:47:48
guidj0s 2011/10/10 11:15:31 2 c99rationale is http://www.open-std.org/jtc1/sc22/WG14/www/C99RationaleV5.10.pdf pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/10 12:58:11
pragma_ 2005/02/10 16:43:47 8 c99status is GCC's C99 implementation status: http://gcc.gnu.org/c99status.html Foaly!~Foaly@ppp-88-217-91-227.dynamic.mnet-online.de 2019/05/24 13:04:19
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/08 00:19:50 5 c99vim is /say A Standard C vim syntax file: http://www.vim.org/scripts/script.php?script_id=234 -- adds numerous improvements to vim C syntax highlighting, including C99 features and more! whoisxy!~whoisxy@82.112.144.183 2017/08/01 04:48:04
pragma_ 2012/01/03 18:57:47 0 c9x is /call c99 nobody
twkm 2004/12/30 18:38:37 7 c9xdiffs is http://home.datacomm.ch/t_wolf/tw/c/c9x_changes.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/05/01 15:47:48
sickle 2012/06/14 14:54:42 0 call by value is /say "In C, all function arguments are passed ‘‘by value.’’ This means that the called function is given the values of its arguments in temporary variables rather than the originals." (K&R) nobody
kate!~kate@unaffiliated/kate 2015/03/17 20:57:23 16 callback is /say A callback function abstracts some aspect of work which is independent of a particular algorithm. An implementation of that algorithm is passed a pointer to that function, and "calls back" for the abstracted work to be done. For code samples, see: http://www.iso-9899.info/wiki/Callback dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/23 14:29:37 Xatenev!~I@87.190.19.178 2019/05/24 06:17:30
sickle 2012/06/14 14:56:14 1 callbyvalue is /say "In C, all function arguments are passed ‘‘by value.’’ This means that the called function is given the values of its arguments in temporary variables rather than the originals." (K&R) wlhlm 2013/07/19 15:12:14
Feel1E6dOLARZ!~uuhimhere@1.9.98.51 2015/03/28 01:42:25 6 calloc is a function that allocates a block of memory for an array of "num" elements, each of them "size" bytes long, AND initializes all its bits to zero. The effective result is the allocation of a zero-initialized memory block of (num*size) bytes. see http://claudihome.com/html/LR/function_reference/Content/c_language/lrFuncRef_CLang_calloc.htm koisoke!xef4@epilogue.org 2018/02/05 00:43:19
angstrom 2011/09/19 02:55:39 3 cam is The C Abstract Machine - An abstract machine used for reasoning about the semantics described in the C-std, in which issues of optimization are irrelevant. CaZe!~caze@unaffiliated/caze 2016/03/01 21:48:49
whoisxy!~whoisxy@87.244.70.100 2017/10/06 08:57:16 8 candice is /say Yes baby I'm all woman. XxX whoisxy!~whoisxy@87.244.70.100 2017/10/06 09:07:01 dave0!~dave@168.215.dsl.syd.iprimus.net.au 2018/01/01 23:52:21
FUZxxl!~fuz@d00m.org 2014/08/11 02:06:44 5 canihaztehcodez is /say ##c is not the place to have others do your homework. If you don't understand parts of your assignment, feel free to ask but don't expect others to do your homework. pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/08/11 02:07:20 fstd!~fstd@unaffiliated/fisted 2015/02/01 08:44:47
pragma_ 2007/09/28 22:11:05 125 cast is /call cdecl cast Amun_Ra!~amun-ra@retro.rocks 2018/01/23 06:10:45
pragma_ 2011/01/28 22:48:58 9 casting is http://web.archive.org/web/20060228210010/http://www.cognitiveprocess.com/~rjh/prg/writings/casting.html korans!~korans@83.137.252.187 2018/03/29 13:21:08
kate` 2007/11/18 11:22:31 29 cat is http://www.iso-9899.info/wiki/Cat nai!~naim@monade.li 2019/04/17 12:16:57
jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/11 11:08:14 1 cbreak is /say Reading characters from stdin without line-buffering requires non-standard solutions like termios, ncurses, or conio. See: http://www.c-faq.com/osdep/cbreak.html jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/11 11:09:04 aozt!~aozt@unaffiliated/aozt 2019/05/04 09:55:11
pragma_ 2011/01/31 20:36:40 11 cc-cmdline is http://code.google.com/p/pbot2-pl/source/browse/trunk/modules/compiler_vm/ <-- download: cc, compiler_vm_server.pl, compiler_vm_client.pl, compiler_watchdog.pl and debugcommands -- Now you too can use cc in on your shell command-line! See the README, as well. whoisxy!~whoisxy@83.137.254.176 2017/09/12 15:16:48
kate` 2009/06/25 08:51:21 1 cfa is /say http://benpfaff.org/writings/clc/ kate`
pragma_ 2005/01/20 21:02:00 53 cfaq is comp.lang.c FAQ: http://www.eskimo.com/~scs/C-faq/top.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/19 07:20:54
fstd!~fstd@unaffiliated/fisted 2015/05/18 15:45:59 7 changreet is /say Please do not greet the channel. It adds no value to the conversation, and highlights the channel tab for no good reason. fstd!~fstd@unaffiliated/fisted 2015/05/18 15:51:56 aozt!~aozt@unaffiliated/aozt 2019/07/14 08:42:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/03/28 21:01:31 24 chanstats is /say ##C channel statistics: http://iso-9899.info/candide/pisg/c.html

with_args: /say ##C channel statistics: <a href='http://iso-9899.info/candide/pisg/c.html#$args'>http://iso-9899.info/candide/pisg/c.html#$args</a>
esselfe!~bsfc@unaffiliated/esselfe 2017/08/27 23:43:29
s00p 2010/10/27 07:55:55 229 char is /say char is required to be able to represent (at least) the values inclusively between -127 and 127 (signed char), or 0 and 255 (unsigned char). The representation chosen is implementation-defined, meaning some compilers will treat a char as signed, others unsigned. sizeof (char) is always 1. See also: CHAR_BIT, CHAR_MIN, CHAR_MAX and byte AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:32:32
Random832 2010/01/04 23:31:16 8 char*a,b is /say The declaration "char* a, b" declares a as a pointer to char and b as a char - it does not declare b as a pointer to char. k!~krok@unaffiliated/krok 2018/05/01 23:05:55
pragma- 2012/10/18 21:07:05 22 check is /say Check: A unit testing framework for C: http://check.sourceforge.net/ jp!ayy@youlosethega.me 2018/01/12 10:39:49
notadev 2007/06/20 08:53:03 10 chill is /say OK, it's getting a little hairy, and really we're all here because we love C. So relax, take a walk, have a cuppa, whatever. Er.. please? ;) korans!~korans@62.68.161.245 2016/11/07 06:21:49
pragma_ 2011/02/11 20:53:19 14 chist is /say The Development of the C Language, by Dennis M. Ritchie: http://www.bell-labs.com/usr/dmr/www/chist.html fizzie!fis@unaffiliated/fizzie 2018/02/20 17:53:05 twkm!twkm@rfc1459.net 2019/08/21 23:07:38
Tuplanolla 2012/08/29 13:27:12 9 chrisgrind is where you paste your "fixed" code to Ideone and Chris reads through it to spot obvious errors. cousteau!~cousteau@138.100.74.81 2015/07/21 10:01:47
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/26 15:01:34 19 cjeololol is /say To play C Jeopardy, join #cjeopardy. tires!~pi@cpe-172-101-20-238.maine.res.rr.com 2018/02/25 13:23:14
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/14 10:53:07 0 cjeopardy is /say Please join #cjeopardy to play C Jeopardy! nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/10 14:23:40 0 ckub4rku is /say You better check yourself before you wreck yourself. Pause and rewind, lil nigga. nobody
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/15 22:33:44 10 clang-analyze is /say Clang has a static analysis tool that can be used with the flag '--analyze'. https://clang-analyzer.llvm.org/ dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/07/02 00:01:35 dorp!~dorp@89-139-210-198.bb.netvision.net.il 2019/08/21 12:36:01
runtime 2007/04/28 15:32:15 6 class is not c, try ##c++ no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/07/29 16:35:33
lemonade` 2010/06/16 13:16:25 2 clcwiki is http://clc-wiki.net/wiki/The_C_Standard van7hu 2011/07/03 21:00:13
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/23 03:45:33 3 cleanup is /say For snippets of cleanups, see http://www.iso-9899.info/wiki/Cleanup esselfe!~bsfc@unaffiliated/esselfe 2018/07/10 14:37:01
nitrix!~nitrix@unaffiliated/nitrix 2014/01/12 15:51:37 3 clever is /say C was not designed to stop its users from doing stupid things, as that would also stop them from doing clever things. esselfe!~bsfc@unaffiliated/esselfe 2017/08/27 23:48:52
dman777_ 2012/01/19 15:16:43 3 clueless is my middle name dave0!~dave@168.215.dsl.syd.iprimus.net.au 2018/01/01 23:52:31
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/11/01 10:11:28 7 cmethods is /say Proposal to add methods() to C structures: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1816.pdf (Briefly discussed in section 6.3 (page 8) of http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1820.pdf) and also http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1875.htm pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/04/26 20:59:22 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/02 13:34:16
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/08 16:18:08 3 collections is /call fact ##c container pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/02 13:23:34
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/21 06:13:04 18 commoninitialsequence is /say If you have multiple structs that share a common initial sequence, you can generalize the access to this sequence by either containing the sequence within a sub-struct, or by using a union to contain the structs. See: http://www.iso-9899.info/wiki/Common_Initial_Sequence dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/07/14 05:38:50
PoppaVic 2010/02/20 15:43:17 23 compilerline is /say Order Matters: CC <overall options> [-std=whatever] <debugging> <optimizing> <warnings> [-pedantic] <Other Include Paths> <Other Lib Paths> <Magic Defines> <Magic Undefines> [-f<language/platform options] [-m<machine options>] [-o outfile] files..... (this is all documented, and files can be .c or .o, .a or .so, or -l<to be linked> commands.) <paraphrased from man gcc> \[!~qwename@unaffiliated/qwename 2017/09/07 08:55:14
pragma- 2012/09/08 17:55:11 31 compiles is /call itworks fooobarrr!~fooobarrr@unaffiliated/fooobarrr 2018/07/25 10:13:58
prec 2005/02/05 16:09:38 77 const is http://publications.gbdirect.co.uk/c_book/chapter8/const_and_volatile.html - see section 8.4.1, http://c-faq.com/ansi/constmismatch.html expert975!~expert975@189.74.135.98 2019/08/27 15:51:46
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/21 01:02:04 20 constconstant is /say The const qualifier is not the same as a constant. The following code sample is not required to compile: const int i = 123; int y = i; int main(void) {} dorp!~dorp@46-116-103-163.bb.netvision.net.il 2019/08/05 07:55:58
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/03/08 16:17:54 7 container is /say A container/collections library proposal for C: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1625.pdf iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/29 09:03:51
Major-Willard 2005/01/04 17:30:57 15 continue is /say continue causes a jump to immediately before the end of the enclosing loop body. fstd!~fstd@unaffiliated/fisted 2015/03/04 18:01:15 Akuli!~akuli@mobile-access-bcee4d-110.dhcp.inet.fi 2019/08/11 11:27:52
pragma- 2012/11/19 13:54:38 12 conversions is /say Understanding integer conversion/promotion rules: https://www.securecoding.cert.org/confluence/display/c/INT02-C.+Understand+integer+conversion+rules pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/09/25 08:36:37 zq!~zq@xorshift.org 2018/03/09 21:46:04
prec 2005/01/21 15:46:10 5 converting is http://www.iso-9899.info/wiki/Converting Zerith 2012/11/15 04:55:20
pragma_ 2011/02/04 11:41:15 2 coroutines is /say Co-routines in C, using Duff's Device: http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html doppel!~doppel@ip68-96-169-47.lv.lv.cox.net 2015/09/15 17:21:18
nitrix!~nitrix@unaffiliated/nitrix 2014/06/02 11:04:12 4 cp is /say Computer programming is a process that leads from an original formulation of a problem to executable programs. It involves activities such as analysis, understanding, and generically solving such problems resulting in an algorithm, verification of requirements (including correctness, resource consumption, etc) and maintaining the source code. alyptik!ayy@youlosethega.me 2017/09/01 06:32:16
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/01/27 12:46:30 13 cpp is /say The term "cpp" in the context of the C programming language refers to the C preprocessor. If you meant C++, then say "C++". meth!~meth@unaffiliated/meth 2018/01/08 09:18:31
n00p 2010/01/19 13:27:10 16 cpp-com is /say cplusplus-dot-com is a C++-related website that happens to reference C89 functions. Many of the examples given are actually C++ because they use 'headers' such as <cstdio> instead of <stdio.h>. A better reference would be the C99/C11 standard. pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/03/30 14:43:55 Luka00!~chatzilla@78-134-48-170.v4.ngi.it 2015/06/30 02:47:04
PoppaVic 2007/09/02 11:22:04 1 cpp_output is http://gcc.gnu.org/onlinedocs/gcc-3.2.3/cpp/Preprocessor-Output.html PoppaVic
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/14 19:53:48 3 cppcheck is /say Cppcheck is a static analysis tool that can diagnose things common compilers do not. http://cppcheck.sourceforge.net/ Oberon4278!~Oberon@pool-108-49-117-196.bstnma.fios.verizon.net 2018/01/28 08:04:42
n00p 2010/07/02 21:59:00 2 cprogramming.com is /say cprogramming.com is not a site to be recommended to C learners because it "provide you with C and C++ programming language resources". Find a resource that distinctly teaches C to avoid confusion. See !books. Random832!~random@unaffiliated/random832 2017/01/31 07:59:26
pragma_ 2010/01/10 16:40:51 1 cpuzzles is http://www.gowrikumar.com/c/index.html mhi^ 2013/01/18 05:25:39
fstd!~fstd@unaffiliated/fisted 2015/05/10 10:02:59 7 crappaste is /say Paste sites to be avoided include: codepaste.net, paste.awesom.eu, paste.jhvisser.com, paste.ofcode.org, paste.ubuntu.com, paste2.org, pastebin.fr, pastebin.ubuntu.com, pastee.org, vpaste.net, www.pasteall.org. These sites make it unnecessarily difficult to access the raw paste data, making it less likely for you to get help with. See the channel topic for recommended sites. shadowchaser!~Shadowcha@liox.eu 2018/01/17 04:12:28
jp!ayy@youlosethega.me 2018/03/25 21:45:47 2 crosscompiler is /say https://wiki.osdev.org/GCC_Cross-Compiler jp!ayy@youlosethega.me 2018/03/25 21:48:04 jp!ayy@youlosethega.me 2018/03/25 21:48:06
pragma- 2012/08/11 08:20:08 343 cstd is /call std twkm!twkm@rfc1459.net 2019/08/14 23:53:56
Tuplanolla 2012/09/25 12:30:11 6 debug is /say Debugging with GCC? Enable all warnings: http://pastie.org/4612802 Learath2!~learath2@unaffiliated/learath2 2018/01/23 09:02:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/02/17 10:42:38 102 decay is /say Decaying implies permanence. Arrays do not "decay"; it is the expression that is converted, not the array. In most cases, an expression that has type "array of T" is converted to an expression with type "pointer to T" that points at the first element. See C11 6.3.2.1p3 for the exceptions. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/05 15:30:06 bungy!~chaos@unaffiliated/pragmatic-chaos 2019/07/02 12:25:56
kate` 2007/11/22 01:45:40 17 decl is http://parrt.cs.usfca.edu/doc/how-to-read-C-declarations.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/06/28 10:59:29 Sebastian!uid71324@gateway/web/irccloud.com/x-dimqxxdtbzadsjfz 2015/11/21 19:17:09
pragma_ 2007/09/28 22:07:18 451 declare is /call cdecl declare cousteau!~cousteau@unaffiliated/cousteau 2018/05/28 04:44:19
kate` 2007/05/20 02:30:20 13 declaredefine is /say A declaration specifies the interpretation and attributes of a set of identifiers. A definition of an identifier is a declaration for that identifier that: for an object, causes storage to be reserved for that object; for a function, includes the function body; for an enumeration constant or typedef name, is the (only) declaration of the identifier. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 07:12:22 dorp!~dorp@85-250-61-34.bb.netvision.net.il 2019/06/22 08:50:01
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/02/21 14:14:26 26 declareuse is /say In C, declaration follows use. That means you do not write `char* p` but instead `char *p` because it doesn't mean `p is a pointer to char` but rather `*p is a char`. https://www.quora.com/Why-doesnt-C-use-better-notation-for-pointers/answer/Brian-Bi pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/31 04:39:13 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/15 14:32:23
dho!~dho@veep.9vx.org 2017/08/23 21:44:26 1 decompose is /call decay arora!~ashok@92.99.140.255 2018/06/18 12:35:25
boru!~boru@unaffiliated/boru 2014/10/30 06:01:14 2 deepc is Expert C Programming: Deep C Secrets by Peter van der Linden. It assumes some foundation in the C programming language and covers its dustier corners as well as common misconceptions, such as array-pointer equivalence. See: http://www.amazon.com/Expert-Programming-Peter-van-Linden/dp/0131774298 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/30 12:24:48
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/12/18 06:03:27 17 defaultarguments is /say { void f(int x, int y /* default 42 */, char *z /* default "foo" */) { printf("[%d, %d, %s]\n", x, y, z); } #define F1(...) f(__VA_ARGS__, 42, "foo")\n #define F2(...) f(__VA_ARGS__, "foo")\n #define F3(...) f(__VA_ARGS__)\n #define FX(_1, _2, _3, n, ...) n\n #define f(...) FX(__VA_ARGS__, F3(__VA_ARGS__), F2(__VA_ARGS__), F1(__VA_ARGS__), 0)\n f(2); f(4, 8); f(16, 32, "bar"); } pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/12/18 06:04:44 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/21 11:52:08
marchelzo!~marchelzo@unaffiliated/marchelzo 2016/12/23 12:32:51 1 degenerate is /call decay marchelzo!~marchelzo@unaffiliated/marchelzo 2017/02/02 16:29:58
doppel!~doppel@ip68-96-169-47.lv.lv.cox.net 2015/09/05 12:54:48 16 demorgan is /say DeMorgan's laws: !a && !b == !(a || b), and !a || !b == !(a && b) fstd!~fstd@unaffiliated/fisted 2015/09/05 12:56:17 aozt!~aozt@unaffiliated/aozt 2019/07/25 02:17:20
fstd!~fstd@unaffiliated/fisted 2016/12/01 09:23:06 115 deport is /say $arg[0] has been deported $arg[1:] (deportation id $digits$digits$digits$digits$digits) taylor!~krok@137.ip-167-114-185.net 2019/08/24 12:50:26
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/21 02:44:47 9 designatedinitializer is /say C99 added designators for initializers. Designator for an element of an array: int arr[3] = { [2] = 42 }; Designator for a member of a struct (or union): struct { int x; int y; } s = { .y = 42 }; pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/09 10:21:51 dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/06/10 12:54:35
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/15 22:28:30 111 diagnostics is /say Diagnostics can help you find issues with your code. For decent diagnostics you should compile your code using gcc or clang with the flags: -std=c99 -Wall -Wextra -Wpedantic. See also: clang-analyze, cppcheck, and valgrind pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/16 17:07:11 othias!504e056a@80.78.5.106 2019/09/06 01:36:47
pragma_ 2011/11/22 13:11:13 11 diamond is cc -paste int ml = 1 + 2 * 3, ls = 1, is = 2, i = 0, cp = (ml - ls) / 2; while( ls > 0 ) putchar((i < cp + ls) ? ((i++ < cp) ? ' ' : '*') : (i=0, ((ls == ml) ? is = -is : 0), ls += is, cp = (ml - ls) / 2, '\n')); pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/03/04 17:16:37 iamgarp!~amgarp@unaffiliated/pragmatic-chaos 2019/04/12 15:39:07
twkm 2004/12/31 20:08:19 3 digraph is a two character alternative punctuator, intended to make using c possible on systems where the primary punctuator is missing, typically from keyboards. they are normal tokens, so are processed in the same way as other source characters (apart from trigraphs). dave0!~dave@042.d.003.ncl.iprimus.net.au 2017/08/03 17:54:59
fstd!~fstd@unaffiliated/fisted 2017/05/31 05:14:30 3 disport is /say $arg[0] has been disported $arg[1:] (happy fun time id $digits$digits$digits$digits$digits) nai!~naim@monade.li 2019/05/03 14:57:40
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/09/03 07:17:27 3 doclog is /say wg14 document log: http://www.open-std.org/jtc1/sc22/wg14/www/wg14_document_log.htm pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/04/18 09:26:42
pragma_ 2005/01/17 01:31:43 34 doesntcare is /say Standard C neither knows nor cares about colors, mice, windows, keyboards, networks or any other system-specific things. If you wanted help with something like that, you would want to tell us what OS, compiler, tools or libraries you intend to use/abuse, or find the appropriate channel. Maxdamantus!~Maxdamant@2001:470:f078::dead:beef:cafe 2013/09/30 05:51:46 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/05 00:16:05
infobahn 2005/01/01 07:52:05 991 dontcastmalloc is /say There is no need to cast the result of library functions that return void *; it makes your code hard to read, adds no value, and can hide a bug if you don't have a valid prototype in scope. See http://c-faq.com/malloc/mallocnocast.html edk!edk@unaffiliated/edk 2013/10/15 10:04:33 Amun_Ra!~amun-ra@retro.rocks 2019/08/05 15:43:38
jack_rabbit!~jack_rabb@2601:240:8200:e1c0:90c0:e65c:1a4b:721e 2017/07/01 02:19:13 2 doobiedoo is screw you jack_rabbit!~jack_rabb@2601:240:8200:e1c0:90c0:e65c:1a4b:721e 2017/07/01 02:23:02
pragma_ 2007/11/14 12:35:41 81 double is /say When taking input for type double you need to use lf format specifier in the scanf statement. But when you are outputting a double you use f format specifier in the printf statements. AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:33:08
pragma_ 2009/09/10 11:46:24 19 draft is /call standard jp!ayy@youlosethega.me 2018/01/21 23:10:25
pragma_ 2009/09/10 11:55:17 3 drafts is /call standard korans!~korans@93.191.203.83 2018/07/19 12:33:21
dansan!~daniel@2600:1700:be30:d00::49 2017/12/27 23:07:31 3 dreams is Dreams are the subconscious mind's way of reminding people to go to school naked and have their teeth fall out. Ranhir!~Ranhir@157.97.53.139 2018/02/10 17:23:48
defrost 2004/12/30 00:32:36 0 duffs-device is magical old school technique to directly express general loop unrolling in C. see http://www.lysator.liu.se/c/duffs-device.html nobody
Major-Willard 2005/01/09 00:19:55 4 else is the keyword that executes a statement/block should an ''if'' expression evaluate to false marchelzo!~marchelzo@hlfxns016cw-156057130092.dhcp-dynamic.FibreOp.ns.bellaliant.net 2015/08/25 20:11:07 dave0!~dave@168.215.dsl.syd.iprimus.net.au 2018/01/01 23:52:41
dho!~dho@veep.9vx.org 2017/09/15 14:00:13 16 endian is /call endianness dho!~dho@veep.9vx.org 2018/06/27 10:49:26
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/14 19:08:41 32 endianness is /call byteorder dho!~dho@veep.9vx.org 2018/06/27 10:49:26
cousteau!~cousteau@138.100.74.81 2015/09/21 03:59:22 56 errata is /say When reading The C Programming Language, 2nd edition, by Kernighan and Ritchie, make sure you check the errata as well: http://www.iso-9899.info/2ediffs.html edk!~edk@spy/edk0 2015/09/24 04:36:54 dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/07/11 02:44:06
defrost 2004/12/29 21:57:14 4 errno is library error macro, #include <errno.h> The macro designates a modifiable int object that is asigned a value greater than zero on certain library errors. see http://www.iso-9899.info/man?strerror nHeck!~heck@unaffiliated/nheck 2016/10/03 15:55:59
pragma_ 2007/09/28 22:07:48 3458 explain is /call cdecl explain pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/09/01 02:31:46 Emil!emil@emil.fi 2019/08/11 14:20:11
nitrix!~nitrix@unaffiliated/nitrix 2013/07/31 12:21:56 22 explode is /me activates the room's self-destruction mechanism. pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/07/31 12:29:10 oldlaptop!~quassel@45.63.78.126 2019/06/02 13:17:47
fstd!~fstd@unaffiliated/fisted 2017/05/31 04:33:08 0 export is /say $arg[0] has been exported $arg[1:] (shipment id $digits$digits$digits$digits$digits) nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/15 15:51:43 1 ez is /say "Pft, I've been programming for years. How hard can C be?" http://i.imgur.com/mPfGshE.gifv pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 21:34:11
pragma_ 2007/11/14 12:36:54 47 f is /call double nil!n@monade.li 2019/06/26 12:58:52
Wulf 2011/02/06 22:49:11 57 fam is /say The last element of a structure with more than one named member may have an incomplete array type; this is called a flexible array member (C99 6.7.2.1p16). struct s { int n; double d[]; } *p = malloc(sizeof *p + 17 * sizeof *p->d); Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/19 07:40:55
PoppaVic!~pops@unaffiliated/poppavic 2014/06/19 12:01:30 1 fd is /say an 'fd' is POSIX. Getting an 'fd' from or to a FILE pointer is POSIX. ##posix is right down the hall. nHeck!~heck@unaffiliated/nheck 2016/10/02 10:26:45
Major-Willard 2005/01/04 17:36:35 12 feof is a function, taking one FILE * as an argument, indicating a file has been completely read by getc/getchar/fread (not a recommended construct) hexoskeli!~hexoskeli@2601:640:8300:5a90:cb:bbba:4673:5305 2018/01/28 21:03:19
pragma_ 2007/10/31 21:45:50 24 fflush(stdin) is /call stdinflush cousteau!~cousteau@unaffiliated/cousteau 2017/12/06 11:33:49
prec 2005/01/26 11:31:35 20 fgets.idiom is while (fgets(line, sizeof line, stdin)) { /* process line */ } whoisxy!~whoisxy@87.244.83.147 2017/02/17 06:20:08
pragma_ 2010/06/03 15:07:02 12 findmybug is /call errors Learath2!~learath2@unaffiliated/learath2 2018/01/23 09:03:14
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/03 23:24:43 30 float is /call floats AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:31:19
pragma- 2012/08/30 03:41:40 74 floats is /call floating AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:31:19
pragma_ 2009/08/29 23:01:41 1 flushstdin is /call stdinflush fizzie!fis@unaffiliated/fizzie 2014/08/11 14:38:21
Chris!~chris@unaffiliated/chris 2014/10/27 03:30:45 23 focus is /say ##c focuses on C. Discuss offtopic things in ##c-offtopic fstd!~fstd@unaffiliated/fisted 2017/05/12 10:48:06 chrisf!~chrisf@2604:a880:2:d0::20d6:8001 2019/08/09 17:02:35
pragma- 2013/03/21 10:42:37 12 foobar is /say English metasyntactic variables: foo, bar, baz, qux, quux, corge, grault, garply, waldo, fred, plugh, xyzzy, thud; UK: wibble, wobble, wubble; French: toto, titi, tata, tutu nitrix!~nitrix@unaffiliated/nitrix 2014/05/31 18:26:13 dave0!~dave@32.060.dsl.syd.iprimus.net.au 2018/02/09 17:31:12
OrngeTide 2007/09/11 18:02:08 20 fpt is /say Function Pointer Tutorial: http://www.newty.de/fpt/fpt.html Wulf!~Wulf@unaffiliated/wulf 2018/03/10 05:29:10
pragma- 2012/05/05 19:18:57 8 fptr is /call fpt Wulf!~Wulf@unaffiliated/wulf 2018/03/10 05:29:10
pragma_ 2010/10/31 03:40:40 3 freebooks is http://qink.net/page/The-Ultimate-List-of-Freely-Available-Programming-Books.aspx ne2k 2011/12/08 07:32:46
angstrom 2011/07/05 10:07:40 18 function is /say A function is a mapping from domain to its image which is in its codomain. nitrix!~nitrix@unaffiliated/nitrix 2014/07/19 20:43:18 wogi!Elite19946@gateway/shell/elitebnc/x-Elite19946 2017/08/27 23:44:11
glacial!~glacial@unaffiliated/glacial 2017/10/17 23:06:40 0 gbook is /call g -site:amazon.* nobody
pragma_ 2010/12/18 18:11:15 2 gccwarnings is http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html Chris!~chris@spy/chris 2015/07/06 06:05:48
nitrix!~nitrix@unaffiliated/nitrix 2014/03/31 08:04:25 3 generalization is /say There's little need to make generalizations about people who program with C. Some have interesting prejudices, others don't. In any case it will depend on the individual, and not the fact that they have a preference for a particular language. nitrix!~nitrix@unaffiliated/nitrix 2014/03/31 08:05:48 profess!~profess__@unaffiliated/csddesk 2015/02/20 17:56:32
pragma- 2013/06/08 07:52:04 4 generic is /call _Generic Xatenev!~I@87.190.19.178 2019/08/12 09:21:12
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/28 08:13:14 16 genericfunctionpointer is /say You can convert a function pointer of one type to a function pointer of a different type for passing it as an argument to a function, but upon calling the function the pointed-to type should be compatible*. See http://www.iso-9899.info/wiki/Generic_Function_Pointer dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/07/07 10:23:09 dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/05 09:55:02
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/21 19:51:48 23 genericpointertopointer is /say A pointer to pointer to void (void **) is not the same as a pointer to void. It is not required to be convertible to other types of pointers to pointers, and it is not a generic pointer to pointer. See http://www.iso-9899.info/wiki/Generic_Pointer_To_Pointer dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/08/31 09:09:39
dho!~dho@veep.9vx.org 2018/01/26 14:50:55 0 genericpp is /call genericpointertopointer nobody
pragma_ 2007/09/28 21:50:33 4 getcdecl is http://hpux.cs.utah.edu/hppd/hpux/Misc/cdecl-2.5/ PoppaVic 2010/11/06 13:03:18
Random832!~random@unaffiliated/random832 2017/06/02 12:11:22 2 getline is declared in stdio.h in POSIX 2008, but is not a standard C function. To compile your own code that defines a "getline" function, you may need to use -ansi or make sure you are not using POSIX (or GNU) feature test macros. On Mac OS X, use -D_ANSI_SOURCE. Random832!~random@unaffiliated/random832 2017/06/04 12:52:19 Random832!~random@unaffiliated/random832 2017/06/04 12:51:46
Quetzalcoatl_ 2009/03/14 13:20:00 2 getopt is a C library function for parsing command-line arguments. It is found on Linux, BSD, and other Unix systems. BlastHardcheese 2012/02/06 03:20:30
pragma_ 2005/02/10 22:25:39 113 gets is very bad. It cannot be told the size of the buffer to read in, therefore it has no way of preventing buffer overflows. Use fgets() with 'stdin' as the FILE* instead. http://www.eskimo.com/~scs/C-faq/q12.23.html GeDaMo!~GeDaMo@unaffiliated/gedamo 2018/05/28 11:13:39
prec 2007/04/30 08:52:31 8 gigo is Garbage In, Garbage Out -- http://c-faq.com/malloc/malloc1.html miasmata!~void@r75-110-115-225.rmntcmtc02.rcmtnc.ab.dh.suddenlink.net 2015/11/19 19:29:20
s00p 2011/08/06 00:26:20 4 github is /say Don't use github for pasting. The line numbers are in a different font size to the code, and as a result they don't line up with lines of code correctly. nai!~naim@nai.im 2018/05/06 22:12:27
aozt!~aozt@unaffiliated/aozt 2019/07/08 08:15:43 1 glib-pcre is /say PCRE functionality is also offered by glib (where strings are always encoded in UTF-8). See: https://developer.gnome.org/glib/stable/glib-Perl-compatible-regular-expressions.html and https://developer.gnome.org/glib/stable/glib-regex-syntax.html aozt!~aozt@unaffiliated/aozt 2019/07/08 08:15:57
n00p 2010/04/22 12:53:35 120 global is /say There is no "global" scope in C. There are four kinds of scopes: function, file, block, and function prototype. A variable that appears outside of any block or list of parameters has file scope, which terminates at the end of the translation unit. no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/08/16 02:37:01
pragma- 2013/05/28 08:34:53 2 globals is /call global Pessimist!Pessimist@gateway/shell/bnc4free/x-jmizepycwyfuqovx 2015/02/11 13:30:45
carcat 2011/02/14 01:46:36 2 gmp is /say The GNU Multiple Precision Arithmetic Library: http://gmplib.org/ dave0!~dave@230.059.dsl.syd.iprimus.net.au 2017/08/24 23:24:36
aozt!~aozt@unaffiliated/aozt 2019/05/04 08:36:36 1 gnu-errno-name-num is /say GNU cpp can produce a list of #define directives if you run it with the -dM option, you can use this feature to list errno macro names and numbers: cpp -dM <<<$'#define _GNU_SOURCE\n#include <errno.h>' | grep '^#define E' | sort -k3n nai!~naim@monade.li 2019/05/04 08:53:48 nai!~naim@monade.li 2019/05/04 08:53:21
latch!~latch@unaffiliated/latch 2016/07/20 08:20:38 4 gone is /me is gone RicardasSim!~RicardasS@78-63-172-44.static.zebra.lt 2019/05/14 17:41:49
glacial!~glacial@unaffiliated/glacial 2018/07/28 12:41:07 1 googlearn is Google is NOT a preferred source for learning C, because almost all the "tutorials" and examples out there are JUNK. Instead, ask a good question here, pick a book, or refer to the current C standard (see topic) glacial!~glacial@unaffiliated/glacial 2018/07/28 12:41:23
kate` 2009/06/12 12:13:02 135 gotchas is /say http://www.iso-9899.info/wiki/C_gotchas -- http://www.drpaulcarter.com/cs/common-c-errors.html sandman13!~sandman13@unaffiliated/sandman13 2016/11/12 03:06:39
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/23 11:01:36 14 goto is /say Goto statements can be useful for cleaning up or breaking out of nested loops/switches. See cleanup and http://www.iso-9899.info/wiki/Goto dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/07/03 09:38:52
fstd!~fstd@unaffiliated/fisted 2017/02/28 15:22:12 3 hacker is /say http://dejimachan.org/pb/player.php?v=/pb/tg/src/1442078700826.webm&t=haxx0r_pro.webm&loop=1 (NSFW) Tactical_Man!~HacKeR_Ga@103.254.131.98 2018/04/01 00:03:40
dave0!~dave@230.059.dsl.syd.iprimus.net.au 2017/09/01 03:39:04 11 hair is /say You are as dumb as a box of hair. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/02 01:12:55 jp!ayy@youlosethega.me 2018/05/08 18:42:56
boru!~boru@unaffiliated/boru 2014/10/16 08:31:49 6 hd is Hacker's Delight by Henry S. Warren Jr. It discusses the use of boolean algebra and bitwise operations to reduce the computational complexity of algorithms. See http://www.hackersdelight.org and http://www.amazon.com/Hackers-Delight-Edition-Henry-Warren/dp/0321842685 cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 09:41:47
guidj0s 2011/07/26 18:02:45 70 heap is /say C does not require implementations to use stacks or heaps. Please refer to the actually defined storage durations, which are four: allocated, automatic, thread and static. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/11 06:46:09
pragma_ 2009/03/21 18:22:00 4 helloworld is http://www.lisha.ufsc.br/~guto/teaching/os/exercise/hello.html doppel!~doppel@ip68-96-169-47.lv.lv.cox.net 2015/01/19 14:24:15
carcat 2011/02/17 18:06:25 7 horror is /say http://i.imgur.com/wLmJI.jpg jp!ayy@youlosethega.me 2017/11/19 22:20:28
Auris- 2008/05/17 06:37:59 20 idb is implementation dependent behaviour. This must be documented by the implementation. no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/08/07 00:10:19
Wulf 2010/03/18 11:25:32 6 identifier is /say An identifier can denote an object; a function; a tag or a member of a structure, union, or enumeration; a typedef name; a label name; a macro name; or a macro parameter. The same identifier can denote different entities at different points in the program. oldlaptop!~quassel@45.63.78.126 2018/08/08 17:50:11
pragma_ 2005/01/22 21:44:45 10 implementation is a particular set of software, running in a particular translation environment under particular control options, that performs translation of programs for, and supports execution of functions in, a particular execution environment (ISO/IEC 9899:1999 3.12) esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 15:49:57
fstd!~fstd@unaffiliated/fisted 2017/05/31 04:32:56 30 import is /say $arg[0] has been imported $arg[1:] (customs id $digits$digits$digits$digits$digits) nil!~n@monade.li 2019/08/24 12:50:42
pragma- 2012/08/02 04:05:40 1 include_optimisation is /say Include guard optimisation: http://www.bobarcher.org/software/include/index.html wlhlm 2013/07/19 15:11:07
Wulf 2011/01/27 12:33:39 5 incomplete is /say A type which describes an object is incomplete if it lacks information needed to determine its size. cousteau!~cousteau@unaffiliated/cousteau 2017/10/24 08:11:03
prev!~prev@unaffiliated/prev 2017/03/24 05:25:40 3 indent is /say If you are not experienced enough to adhere to coding style allowing production of readable C code, brush your source automatically: using GNU indent http://gnu.org/s/indent/, using clang-format http://clang.llvm.org/docs/ClangFormat.html, or using astyle http://astyle.sourceforge.net/ pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/03/24 05:26:47 mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/04/18 16:20:23
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/07/01 12:58:07 24 initidiom is /say A common idiom for zero initializing elements of arrays or members of structs (automatic storage duration) is: char arr[10] = { 0 }; struct { int x; int y;} s = { 0 }; dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/05 15:09:14
Wulf 2010/05/10 14:26:31 33 inline is /say A function declared with an inline function specifier is an inline function. Making a function an inline function suggests that calls to the function be as fast as possible. If you use `inline', always use `static', too. See https://kellett.im/a/inline dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/23 00:12:10 dorp!~dorp@89-138-224-98.bb.netvision.net.il 2019/07/21 09:15:17
jp!ayy@youlosethega.me 2017/11/05 20:53:24 8 inline2 is /say http://wiki.osdev.org/Inline_Functions_in_C jp!ayy@youlosethega.me 2018/07/04 09:04:38
infobahn 2005/01/01 07:59:07 286 int is a signed integer data type, at least 16 bits wide, which must be able to represent (at least) all the numbers in the range -32767 to +32767. Its lowest value, INT_MIN, and highest value, INT_MAX, are defined in <limits.h> dorp!~dorp@89-139-210-198.bb.netvision.net.il 2019/08/24 04:30:50
o11c!~ben@unaffiliated/o11c 2017/05/10 12:15:04 1 int-str is To convert an int to a string without knowing whether it is signed, see https://gist.github.com/o11c/0f117636d6c8873d5cc6f63347ee4fdd o11c!~ben@unaffiliated/o11c 2017/05/10 12:15:14
pragma_ 2007/10/18 12:40:47 17 isospec is /call standard eboy 2012/08/16 02:34:07
pragma- 2013/02/27 14:15:58 3 itcompiled is /call works fizzie!fis@unaffiliated/fizzie 2014/10/08 23:44:51
pragma- 2012/11/21 19:22:57 9 itcompiles is /call compiles Amun_Ra!~amun-ra@retro.rocks 2018/05/31 14:19:48
kate!~kate@212.74.13.142 2016/11/28 12:44:47 11 json is /say http://seriot.ch/parsing_json.php dho!~dho@veep.9vx.org 2018/08/12 09:36:34
pragma_ 2007/12/18 18:45:55 130 k&r2 is /call k&r cousteau!~cousteau@unaffiliated/cousteau 2018/06/10 10:53:14
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/25 19:29:14 26 k&r3 is /say Some of us no longer primarily recommend K&R because it's somewhat outdated and unmaintained. It's tiresome reminding would-be readers of implicit int's removal in modern C, among many other issues. The errata that addresses only some of these issues no longer exists on the official site. If a 3rd edition of K&R emerges that rectifies these issues, we'll happily recommend it again! izabera!~izabera@unaffiliated/izabera 2017/01/25 19:37:20 Hello71!Hello71@unaffiliated/hello71 2018/06/25 15:23:30
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 04:44:41 46 k&rking is /say 'The C Programming Language' (2nd Ed, 1988) aka K&R2, is a book that teaches C89, it has a lengthy errata and it contains 'old style' things. The book is short (272 pages) and as such less informative. 'C Programming: A Modern Approach' by K. N. King (2nd Ed, 2008) covers both C89 and C99, it's very much informative and therefore lengthy (832 pages). dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 06:21:30 othias!504e056a@80.78.5.106 2019/08/26 01:14:40
izabera!~izabera@unaffiliated/izabera 2017/01/25 19:38:55 117 king is /say 'C Programming: A Modern Approach' by K. N. King (2nd Ed, 2008) is a recommended C book that teaches both C89 and C99. http://knking.com/books/c2/index.html dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 06:09:51 nitrix!~nitrix@haskell/developer/nitrix 2019/07/27 15:04:12
korans!~korans@83.137.252.187 2018/03/30 07:10:52 16 kk is /call k&rking iamgarp!~amgarp@unaffiliated/pragmatic-chaos 2019/04/10 22:58:32
fisted!~fisted@unaffiliated/fisted 2014/03/21 21:20:13 1 knf is http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/share/misc/style dave0!~dave@042.d.003.ncl.iprimus.net.au 2017/07/05 14:32:08
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/04/11 14:16:03 20 knk is /call king bungee!~chaos@unaffiliated/pragmatic-chaos 2019/06/29 08:47:55
pragma_ 2010/06/02 17:59:40 7 knr is /call k&r pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/09/08 03:16:19 jp!ayy@youlosethega.me 2018/02/01 21:39:07
pragma- 2012/09/08 13:30:34 114 kr is /call k&r caze!~caze@unaffiliated/caze 2019/07/24 14:49:30
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 24 kr1-1 is /say Chapter 1: A Tutorial Introduction; Exercise 1-1. Run the ‘‘hello, world’’ program on your system. Experiment with leaving out parts of the program, to see what error messages you get. jp!ayy@youlosethega.me 2018/03/26 02:38:53
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 8 kr1-10 is /say Chapter 1: A Tutorial Introduction; Exercise 1-10. Write a program to copy its input to its output, replacing each tab by \t, each backspace by \b, and each backslash by \\. This makes tabs and backspaces visible in an unambiguous way. jp!ayy@youlosethega.me 2017/11/04 10:22:16
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 11 kr1-11 is /say Chapter 1: A Tutorial Introduction; Exercise 1-11. How would you test the word count program? What kinds of input are most likely to uncover bugs if there are any? jchapman27!~Zuroxx@host-128-227-216-237.xlate.ufl.edu 2015/10/22 19:56:49
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 11 kr1-12 is /say Chapter 1: A Tutorial Introduction; Exercise 1-12. Write a program that prints its input one word per line. Richard_Cavell!~Richard_C@host86-187-163-55.range86-187.btcentralplus.com 2017/01/10 07:15:23
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 33 kr1-13 is /say Chapter 1: A Tutorial Introduction; Exercise 1-13. Write a program to print a histogram of the lengths of words in its input. It is easy to draw the histogram with the bars horizontal; a vertical orientation is more challenging. e!e@freenode/staff/spy.edk 2019/08/29 09:46:59
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 16 kr1-14 is /say Chapter 1: A Tutorial Introduction; Exercise 1-14. Write a program to print a histogram of the frequencies of different characters in its input. e!e@freenode/staff/spy.edk 2019/08/29 09:47:03
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr1-15 is /say Chapter 1: A Tutorial Introduction; Exercise 1-15. Rewrite the temperature conversion program of Section 1.2 to use a function for conversion. pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:50:04 e!e@freenode/staff/spy.edk 2019/08/29 09:47:10
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 14 kr1-16 is /say Chapter 1: A Tutorial Introduction; Exercise 1-16. Revise the main routine of the longest-line program so it will correctly print the length of arbitrary long input lines, and as much as possible of the text. e!e@freenode/staff/spy.edk 2019/08/29 09:47:13
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 27 kr1-17 is /say Chapter 1: A Tutorial Introduction; Exercise 1-17. Write a program to print all input lines that are longer than 80 characters. e!e@freenode/staff/spy.edk 2019/08/29 09:47:18
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 46 kr1-18 is /say Chapter 1: A Tutorial Introduction; Exercise 1-18. Write a program to remove trailing blanks and tabs from each line of input, and to delete entirely blank lines. e!e@freenode/staff/spy.edk 2019/08/29 09:47:33
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 20 kr1-19 is /say Chapter 1: A Tutorial Introduction; Exercise 1-19. Write a function reverse(s) that reverses the character string s. Use it to write a program that reverses its input a line at a time. e!e@freenode/staff/spy.edk 2019/08/29 09:47:42
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 9 kr1-2 is /say Chapter 1: A Tutorial Introduction; Exercise 1-2. Experiment to find out what happens when prints’s argument string contains \c, where c is some character not listed above. devansh1302!~androirc@59.180.175.107 2017/07/22 06:19:21
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 23 kr1-20 is /say Chapter 1: A Tutorial Introduction; Exercise 1-20. Write a program detab that replaces tabs in the input with the proper number of blanks to space to the next tab stop. Assume a fixed set of tab stops, say every n columns. Should n be a variable or a symbolic parameter? e!e@freenode/staff/spy.edk 2019/08/29 09:47:48
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 14 kr1-21 is /say Chapter 1: A Tutorial Introduction; Exercise 1-21. Write a program entab that replaces strings of blanks by the minimum number of tabs and blanks to achieve the same spacing. Use the same tab stops as for detab. When either a tab or a single blank would suffice to reach a tab stop, which should be given preference? caze!~caze@unaffiliated/caze 2017/01/28 08:55:53
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 12 kr1-22 is /say Chapter 1: A Tutorial Introduction; Exercise 1-22. Write a program to ‘‘fold’’ long input lines into two or more shorter lines after the last non-blank character that occurs before the n-th column of input. Make sure your program does something intelligent with very long lines, and if there are no blanks or tabs before the specified column. christopher!NextHendri@unaffiliated/nexthendrix 2019/08/19 09:13:03
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 21 kr1-23 is /say Chapter 1: A Tutorial Introduction; Exercise 1-23. Write a program to remove all comments from a C program. Don’t forget to handle quoted strings and character constants properly. C comments don’t nest. DevUt!~quassel@unaffiliated/devut 2017/01/29 03:34:41
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr1-24 is /say Chapter 1: A Tutorial Introduction; Exercise 1-24. Write a program to check a C program for rudimentary syntax errors like unmatched parentheses, brackets and braces. Don’t forget about quotes, both single and double, escape sequences, and comments. (This program is hard if you do it in full generality.) e!e@freenode/staff/spy.edk 2016/12/27 12:09:23
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 6 kr1-3 is /say Chapter 1: A Tutorial Introduction; Exercise 1-3. Modify the temperature conversion program to print a heading above the table. devansh1302!~androirc@59.180.175.107 2017/07/22 06:19:53
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr1-4 is /say Chapter 1: A Tutorial Introduction; Exercise 1-4. Write a program to print the corresponding Celsius to Fahrenheit table. kate!~kate@unaffiliated/kate 2015/08/01 05:47:09
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr1-5 is /say Chapter 1: A Tutorial Introduction; Exercise 1-5. Modify the temperature conversion program to print the table in reverse order, that is, from 300 degrees to 0. sonro!~sonro@host109-151-175-156.range109-151.btcentralplus.com 2016/01/27 13:51:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/09/14 18:07:18 5 kr1-6 is /say Chapter 1: A Tutorial Introduction; Exercise 1-6. Verify that the expression getchar() != EOF is 0 or 1. marchelzo!~marchelzo@unaffiliated/marchelzo 2016/12/25 10:03:42
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr1-7 is /say Chapter 1: A Tutorial Introduction; Exercise 1-7. Write a program to print the value of EOF. fstd!~fstd@unaffiliated/fisted 2016/02/19 21:14:51
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 6 kr1-8 is /say Chapter 1: A Tutorial Introduction; Exercise 1-8. Write a program to count blanks, tabs, and newlines. sonro!~sonro@host109-151-175-156.range109-151.btcentralplus.com 2016/01/27 14:10:56
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 9 kr1-9 is /say Chapter 1: A Tutorial Introduction; Exercise 1-9. Write a program to copy its input to its output, replacing each string of one or more blanks by a single blank. caze!~caze@unaffiliated/caze 2019/07/24 15:07:36
edk!~edk@spy/edk0 2015/10/21 14:40:07 13 kr2 is /call k&r Hello71!Hello71@unaffiliated/hello71 2018/05/14 07:30:06
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 16 kr2-1 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-1. Write a program to determine the ranges of char, short, int, and long variables, both signed and unsigned, by printing appropriate values from standard headers and by direct computation. Harder if you compute them: determine the ranges of the various floating-point types. jp!ayy@youlosethega.me 2017/12/09 10:58:08
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr2-10 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-10. Rewrite the function lower, which converts upper case letters to lower case, with a conditional expression instead of if-else. schquid!~schquid@unaffiliated/schquid 2015/10/03 10:00:25
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr2-2 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-2. Write a loop equivalent to the for loop above without using && or ||. [The for loop is: for (i=0; i < lim-1 && (c=getchar()) != ’\n’ && c != EOF; ++i) s[i] = c;] pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/06 22:10:03 fstd!~fstd@unaffiliated/fisted 2015/10/27 08:04:54
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr2-3 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-3. Write a function htoi(s), which converts a string of hexadecimal digits (including an optional 0x or 0X) into its equivalent integer value. The allowable digits are 0 through 9, a through f, and A through F. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2015/09/25 04:38:24
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr2-4 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-4. Write an alternative version of squeeze(s1,s2) that deletes each character in s1 that matches any character in the string s2. jp!ayy@youlosethega.me 2017/12/17 14:48:24
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 5 kr2-5 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-5. Write the function any(s1,s2), which returns the first location in a string s1 where any character from the string s2 occurs, or -1 if s1 contains no characters from s2. (The standard library function strpbrk does the same job but returns a pointer to the location.) karthyk!~karthyk@2620:1e8:2:1::2fa 2017/02/12 09:55:13
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 12 kr2-6 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-6. Write a function setbits(x,p,n,y) that returns x with the n bits that begin at position p set to the rightmost n bits of y, leaving the other bits unchanged. fluter!~fluter@fedora/fluter 2016/02/13 03:42:37
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr2-7 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-7. Write a function invert(x,p,n) that returns x with the n bits that begin at position p inverted (i.e., 1 changed into 0 and vice versa), leaving the others unchanged. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2015/10/01 08:42:48
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr2-8 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-8. Write a function rightrot(x,n) that returns the value of the integer x rotated to the right by n positions. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2015/10/01 12:49:20
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 6 kr2-9 is /say Chapter 2: Types, Operators and Expressions; Exercise 2-9. In a two’s complement number system, x &= (x-1) deletes the rightmost 1-bit x. Explain why. Use this observation to write a faster version of bitcount. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/04/11 12:48:58
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/25 19:36:32 16 kr3 is /call k&r3 Hello71!Hello71@unaffiliated/hello71 2018/06/25 15:23:30
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 6 kr3-1 is /say Chapter 3: Control Flow; Exercise 3-1. Our binary search makes two tests inside the loop, when one would suffice (at the price of more tests outside.) Write a version with only one test inside the loop and measure the difference in run-time. dave0!~dave@168.215.dsl.syd.iprimus.net.au 2017/11/27 15:18:36
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr3-2 is /say Chapter 3: Control Flow; Exercise 3-2. Write a function escape(s,t) that converts characters like newline and tab into visible escape sequences like \n and \t as it copies the string t to s. Use a switch. Write a function for the other direction as well, converting escape sequences into the real characters. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/02/08 16:15:51
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr3-3 is /say Chapter 3: Control Flow; Exercise 3-3. Write a function expand(s1,s2) that expands shorthand notations like a-z in the string s1 into the equivalent complete list abc...xyz in s2. Allow for letters of either case and digits, and be prepared to handle cases like a-b-c and a-z0-9 and -a-z. Arrange that a leading or trailing - is taken literally. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/02/16 15:09:11
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 5 kr3-4 is /say Chapter 3: Control Flow; Exercise 3-4. In a two’s complement number representation, our version of itoa does not handle the largest negative number, that is, the value of n equal to -(2^(wordsize-1)). Explain why not. Modify it to print that value correctly, regardless of the machine on which it runs. dho!~dho@veep.9vx.org 2017/04/11 13:10:32
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr3-5 is /say Chapter 3: Control Flow; Exercise 3-5. Write the function itob(n,s,b) that converts the integer n into a base b character representation in the string s. In particular, itob(n,s,16) formats n as a hexadecimal integer in s. marchelzo!~marchelzo@unaffiliated/marchelzo 2015/10/08 20:42:53 Wulf!~Wulf@unaffiliated/wulf 2015/10/09 23:56:50
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr3-6 is /say Chapter 3: Control Flow; Exercise 3-6. Write a version of itoa that accepts three arguments instead of two. The third argument is a minimum field width; the converted number must be padded with blanks on the left if necessary to make it wide enough. Pessimist!Pessimist@gateway/shell/bnc4free/x-aynrofrafrmgbfxw 2016/02/08 02:40:16
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr4-1 is /say Chapter 4: Functions and Program Structure; Exercise 4-1. Write the function strindex(s,t) which returns the position of the rightmost occurrence of t in s, or -1 if there is none. apokatastasis!~void@r75-110-115-225.rmntcmtc02.rcmtnc.ab.dh.suddenlink.net 2015/10/13 19:09:41
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr4-10 is /say Chapter 4: Functions and Program Structure; Exercise 4-10. An alternate organization uses getline to read an entire input line; this makes getch and ungetch unnecessary. Revise the calculator to use this approach. nHeck!~heck@unaffiliated/nheck 2016/10/03 16:14:23
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr4-11 is /say Chapter 4: Functions and Program Structure; Exercise 4-11. Modify getop so that it doesn’t need to use ungetch. Hint: use an internal static variable. qwename!~qwename@unaffiliated/qwename 2017/09/04 06:57:04
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr4-12 is /say Chapter 4: Functions and Program Structure; Exercise 4-12. Adapt the ideas of printd to write a recursive version of itoa; that is, convert an integer into a string by calling a recursive routine. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/04/05 11:04:54
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr4-13 is /say Chapter 4: Functions and Program Structure; Exercise 4-13. Write a recursive version of the function reverse(s), which reverses the string s in place. thomas_d!~thomas_d@unaffiliated/thomas-d/x-6984210 2015/07/31 00:50:47
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr4-14 is /say Chapter 4: Functions and Program Structure; Exercise 4-14. Define a macro swap(t,x,y) that interchanges two arguments of type t. (Block structure will help.) nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr4-2 is /say Chapter 4: Functions and Program Structure; Exercise 4-2. Extend atof to handle scientific notation of the form 123.45e-6 where a floating-point number may be followed by e or E and an optionally signed exponent. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr4-3 is /say Chapter 4: Functions and Program Structure; Exercise 4-3. Given the basic framework, it’s straightforward to extend the calculator. Add the modulus (%) operator and provisions for negative numbers. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2015/10/16 22:23:09
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr4-4 is /say Chapter 4: Functions and Program Structure; Exercise 4-4. Add the commands to print the top elements of the stack without popping, to duplicate it, and to swap the top two elements. Add a command to clear the stack. marchelzo!~marchelzo@unaffiliated/marchelzo 2015/10/17 20:34:54
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr4-5 is /say Chapter 4: Functions and Program Structure; Exercise 4-5. Add access to library functions like sin, exp, and pow. See <math.h> in Appendix B, Section 4. pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/06 19:33:41
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr4-6 is /say Chapter 4: Functions and Program Structure; Exercise 4-6. Add commands for handling variables. (It’s easy to provide twenty-six variables with single-letter names.) Add a variable for the most recently printed value. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/03/15 16:33:25
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr4-7 is /say Chapter 4: Functions and Program Structure; Exercise 4-7. Write a routine ungets(s) that will push back an entire string onto the input. Should ungets know about buf and bufp, or should it just use ungetch? Pheinte!~Pheinte@188.250.192.26 2016/02/04 12:03:43
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr4-8 is /say Chapter 4: Functions and Program Structure; Exercise 4-8. Suppose that there will never be more than one character of pushback. Modify getch and ungetch accordingly. thomas_d!~thomas_d@unaffiliated/thomas-d/x-6984210 2015/07/24 12:52:20
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr4-9 is /say Chapter 4: Functions and Program Structure; Exercise 4-9. Our getch and ungetch do not handle a pushed-back EOF correctly. Decide what their properties ought to be if an EOF is pushed back, then implement your design. marchelzo!~marchelzo@unaffiliated/marchelzo 2015/10/29 14:27:06
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr5-1 is /say Chapter 5: Pointers and Arrays; Exercise 5-1. As written, getint treats a + or - not followed by a digit as a valid representation of zero. Fix it to push such a character back on the input. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/04/07 17:14:26
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr5-10 is /say Chapter 5: Pointers and Arrays; Exercise 5-10. Write the program expr, which evaluates a reverse Polish expression from the command line, where each operator or operand is a separate argument. For example, expr 2 3 4 + * evaluates 2 * (3 + 4). anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2017/06/02 22:20:38
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 6 kr5-11 is /say Chapter 5: Pointers and Arrays; Exercise 5-11. Modify the program entab and detab (written as exercises in Chapter 1) to accept a list of tab stops as arguments. Use the default tab settings if there are no arguments. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2017/06/02 22:20:53
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr5-12 is /say Chapter 5: Pointers and Arrays; Exercise 5-12. Extend entab and detab to accept the shorthand `entab -m +n` to mean tab stops every n columns, starting at column m. Choose convenient (for the user) default behavior. atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/05/03 13:38:41
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr5-13 is /say Chapter 5: Pointers and Arrays; Exercise 5-13. Write the program tail, which prints the last n lines of its input. By default, n is set to 10, let us say, but it can be changed by an optional argument so that `tail -n` prints the last n lines. The program should behave rationally no matter how unreasonable the input or the value of n. Write the program so that it makes the best use of available storage; lines should be stored as in the sorting program of Section 5.6, not in a two-dimensional array of fixed size. dho!~dho@veep.9vx.org 2017/08/25 09:58:01
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr5-14 is /say Chapter 5: Pointers and Arrays; Exercise 5-14. Modify the sort program to handle a -r flag, which indicates sorting in reverse (decreasing) order. Be sure that -r works with -n. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr5-15 is /say Chapter 5: Pointers and Arrays; Exercise 5-15. Add the option -f to fold upper and lower case together, so that case distinctions are not made during sorting; for example, a and A compare equal. profess!~profess@unaffiliated/csddesk 2015/08/29 19:54:19
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr5-16 is /say Chapter 5: Pointers and Arrays; Exercise 5-16. Add the -d (‘‘directory order’’) option, which makes comparisons only on letters, numbers and blanks. Make sure it works in conjunction with -f. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 5 kr5-17 is /say Chapter 5: Pointers and Arrays; Exercise 5-17. Add a field-searching capability, so sorting may bee done on fields within lines, each field sorted according to an independent set of options. (The index for this book was sorted with -df for the index category and -n for the page numbers.) atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/06/20 13:23:10
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr5-18 is /say Chapter 5: Pointers and Arrays; Exercise 5-18. Make dcl recover from input errors. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/03 13:52:01
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr5-19 is /say Chapter 5: Pointers and Arrays; Exercise 5-19. Modify undcl so that it does not add redundant parentheses to declarations. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/03 13:53:28
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr5-2 is /say Chapter 5: Pointers and Arrays; Exercise 5-2. Write getfloat, the floating-point analog of getint. What type does getfloat return as its function value? nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 11 kr5-20 is /say Chapter 5: Pointers and Arrays; Exercise 5-20. Expand dcl to handle declarations with function argument types, qualifiers like const, and so on. qwename!~qwename@unaffiliated/qwename 2017/08/09 18:07:55
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr5-3 is /say Chapter 5: Pointers and Arrays; Exercise 5-3. Write a pointer version of the function strcat that we showed in Chapter 2: strcat(s,t) copies the string t to the end of s. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr5-4 is /say Chapter 5: Pointers and Arrays; Exercise 5-4. Write the function strend(s,t), which returns 1 if the string t occurs at the end of the string s, and zero otherwise. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2016/02/01 14:24:25
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr5-5 is /say Chapter 5: Pointers and Arrays; Exercise 5-5. Write versions of the library functions strncpy, strncat, and strncmp, which operate on at most the first n characters of their argument strings. For example, strncpy(s,t,n) copies at most n characters of t to s. Full descriptions are in Appendix B. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2016/02/01 14:32:25
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr5-6 is /say Chapter 5: Pointers and Arrays; Exercise 5-6. Rewrite appropriate programs from earlier chapters and exercises with pointers instead of array indexing. Good possibilities include getline (Chapters 1 and 4), atoi, itoa, and their variants (Chapters 2, 3, and 4), reverse (Chapter 3), and strindex and getop (Chapter 4). anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2016/02/25 19:30:59
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr5-7 is /say Chapter 5: Pointers and Arrays; Exercise 5-7. Rewrite readlines to store lines in an array supplied by main, rather than calling alloc to maintain storage. How much faster is the program? anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2017/06/02 22:19:53
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr5-8 is /say Chapter 5: Pointers and Arrays; Exercise 5-8. There is no error checking in day_of_year or month_day. Remedy this defect. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2017/06/02 22:20:09
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr5-9 is /say Chapter 5: Pointers and Arrays; Exercise 5-9. Rewrite the routines day_of_year and month_day with pointers instead of indexing. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2017/06/02 22:20:26
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr6-1 is /say Chapter 6: Structures; Exercise 6-1. Our version of getword does not properly handle underscores, string constants, comments, or preprocessor control lines. Write a better version. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/08/13 19:20:37
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr6-2 is /say Chapter 6: Structures; Exercise 6-2. Write a program that reads a C program and prints in alphabetical order each group of variable names that are identical in the first 6 characters, but different somewhere thereafter. Don’t count words within strings and comments. Make 6 a parameter that can be set from the command line. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/08/19 15:17:42
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr6-3 is /say Chapter 6: Structures; Exercise 6-3. Write a cross-referencer that prints a list of all words in a document, and for each word, a list of the line numbers on which it occurs. Remove noise words like ‘‘the,’’ ‘‘and,’’ and so on. anonnumberanon!~anonnumbe@unaffiliated/anonnumberanon 2017/06/02 22:21:10
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr6-4 is /say Chapter 6: Structures; Exercise 6-4. Write a program that prints the distinct words in its input sorted into decreasing order of frequency of occurrence. Precede each word by its count. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/08/30 19:20:28
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 2 kr6-5 is /say Chapter 6: Structures; Exercise 6-5. Write a function undef that will remove a name and definition from the table maintained by lookup and install. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/09/03 10:47:28
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr6-6 is /say Chapter 6: Structures; Exercise 6-6. Implement a simple version of the #define processor (i.e., no arguments) suitable for use with C programs, based on the routines of this section. You may also find getch and ungetch helpful. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/09/26 17:18:12
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr7-1 is /say Chapter 7: Input and Output; Exercise 7-1. Write a program that converts upper case to lower or lower case to upper, depending on the name it is invoked with, as found in argv[0]. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr7-2 is /say Chapter 7: Input and Output; Exercise 7-2. Write a program that will print arbitrary input in a sensible way. As a minimum, it should print non-graphic characters in octal or hexadecimal according to local custom, and break long text lines. alyptik!ayy@youlosethega.me 2017/09/27 13:15:57
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr7-3 is /say Chapter 7: Input and Output; Exercise 7-3. Revise minprintf to handle more of the other facilities of printf. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr7-4 is /say Chapter 7: Input and Output; Exercise 7-4. Write a private version of scanf analogous to minprintf from the previous section. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/10/04 18:00:52
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr7-5 is /say Chapter 7: Input and Output; Exercise 7-5. Rewrite the postfix calculator of Chapter 4 to use scanf and/or sscanf to do the input and number conversion. doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/10/07 13:18:46
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr7-6 is /say Chapter 7: Input and Output; Exercise 7-6. Write a program to compare two files, printing the first line where they differ. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 4 kr7-7 is /say Chapter 7: Input and Output; Exercise 7-7. Modify the pattern finding program of Chapter 5 to take its input from a set of named files or, if no files are named as arguments, from the standard input. Should the file name be printed when a matching line is found? atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/08/06 08:02:30
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr7-8 is /say Chapter 7: Input and Output; Exercise 7-8. Write a program to print a set of files, starting each new one on a new page, with a title and a running page count for each file. MethylatorX!~quassel@41.238.141.38 2015/08/22 17:22:10
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr7-9 is /say Chapter 7: Input and Output; Exercise 7-9. Functions like isupper can be implemented to save space or to save time. Explore both possibilities. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 3 kr8-1 is /say Chapter 8: The UNIX System Interface; Exercise 8-1. Rewrite the program cat from Chapter 7 using read, write, open, and close instead of their standard library equivalents. Perform experiments to determine the relative speeds of the two versions. korans!~korans@5.42.131.31 2018/05/04 12:20:00
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 1 kr8-2 is /say Chapter 8: The UNIX System Interface; Exercise 8-2. Rewrite fopen and _fillbuf with fields instead of explicit bit operations. Compare code size and execution speed. CaZe!~caze@unaffiliated/caze 2015/09/09 21:24:40
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr8-3 is /say Chapter 8: The UNIX System Interface; Exercise 8-3. Design and write _flushbuf, fflush, and fclose. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr8-4 is /say Chapter 8: The UNIX System Interface; Exercise 8-4. The standard library function int fseek(FILE *fp, long offset, int origin) is identical to lseek except that fp is a file pointer instead of a file descriptor and return value is an int status, not a position. Write fseek. Make sure that your fseek coordinates properly with the buffering done for other functions of the library. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr8-5 is /say Chapter 8: The UNIX System Interface; Exercise 8-5. Modify the fsize program to print the other information contained in the inode entry. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr8-6 is /say Chapter 8: The UNIX System Interface; Exercise 8-6. The standard library function calloc(n,size) returns a pointer to n objects of size size, with the storage initialized to zero. Write calloc, by calling malloc or by modifying it. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr8-7 is /say Chapter 8: The UNIX System Interface; Exercise 8-7. malloc accepts a size request without checking its plausibility; free believes that the block it is asked to free contains a valid size field. Improve these routines so they make more pains with error checking. nobody
pragma-!chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:38:40 0 kr8-8 is /say Chapter 8: The UNIX System Interface; Exercise 8-8. Write a routine bfree(p,n) that will free any arbitrary block p of n characters into the free list maintained by malloc and free. By using bfree, a user can add a static or external array to the free list at any time. nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/07/28 13:57:59 4 kr_lovecraft is /say pragma- found this: http://www.bobhobbs.com/files/kr_lovecraft.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/02/16 16:47:20
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/06 19:16:35 2 krexercises is kr1-1 kr1-10 kr1-11 kr1-12 kr1-13 kr1-14 kr1-15 kr1-16 kr1-17 kr1-18 kr1-19 kr1-2 kr1-20 kr1-21 kr1-22 kr1-23 kr1-24 kr1-3 kr1-4 kr1-5 kr1-7 kr1-8 kr1-9 kr2-1 kr2-10 kr2-2 kr2-3 kr2-4 kr2-5 kr2-6 kr2-7 kr2-8 kr2-9 kr3-1 kr3-2 kr3-3 kr3-4 kr3-5 kr3-6 kr4-1 kr4-10 kr4-11 kr4-12 kr4-13 kr4-14 kr4-2 kr4-3 kr4-4 kr4-5 kr4-6 kr4-7 kr4-8 kr4-9 kr5-1 kr5-10 kr5-11 kr5-12 kr5-13 kr5-14 kr5-15 kr5-16 kr5-17 kr5-18 kr5-19 kr5-2 kr5-20 kr5-3 kr5-4 kr5-5 kr5-6 kr5-7 kr5-8 kr5-9 kr6-1 kr6-2 kr6-3 kr6-4 kr6-5 kr6-6 kr7-1 kr7-2 kr7-3 kr7-4 kr7-5 kr7-6 kr7-7 kr7-8 kr7-9 kr8-1 kr8-2 kr8-3 kr8-4 kr8-5 kr8-6 kr8-7 kr8-8 pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/06 19:33:13 graff!~graff@unaffiliated/graff 2017/07/15 04:38:11
qi!edk@spy/edk0 2016/05/03 09:58:18 0 language is /say Please apply bad language judiciously and on a case-by-case basis. nobody
addatoo!~daem0n@c-98-204-134-144.hsd1.md.comcast.net 2013/11/30 18:47:33 8 last is /say No refunds. dho!~dho@veep.9vx.org 2018/01/13 00:49:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/04/19 03:05:01 152 lcthw is /say Learn C The Hard Way is an online book that should be avoided. It does not teach you C, but rather shows how C might work on a specific implementation. It contains numerous errors, bad examples and absurd arguments. See http://hentenaar.com/dont-learn-c-the-wrong-way and https://kellett.im/a/hardway mzo!~marchelzo@unaffiliated/marchelzo 2017/04/15 15:33:46 oldlaptop!~quassel@45.63.78.126 2019/04/07 18:57:23
boris`` 2010/10/21 08:30:54 23 ld is /say "Undefined reference" is a linker error. It's not a compile error. #includes don't help. You did not define the thing in the error message; you forgot to link the file that defines it; you forgot to link to the library that defines it; or, if it's a static library, you have the wrong order on the linker command line. Check which one. (Note that some linkers call it an unresolved external.) dave0!~dave0@069.d.003.ncl.iprimus.net.au 2019/08/13 18:48:53
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 03:51:58 12 learnc is /say This channel is not a substitute for a C book, we are not here to teach you C. Please learn C by working through a C book, and we'll be glad to assist you during your endeavor. dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 04:26:40 dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/06/28 08:40:07
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/10 17:25:43 11 learngradually is /say Learning C should be done gradually by following a C learning resource. By taking on projects you're not ready for you are not learning C and you waste a lot of time while getting frustrated with your progress. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/10 21:32:55 dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/08/11 02:55:58
pragma_ 2007/11/14 12:36:55 5 lf is /call double pragma- 2012/09/20 13:58:23
latch!~latch@unaffiliated/latch 2016/10/25 10:25:40 2 libc is /say The term "libc" is commonly used as a shorthand for the "standard C library", a library of standard functions that can be used by all C programs (and sometimes by programs in other languages). esselfeRO!~bsfc@unaffiliated/esselfe 2017/11/09 16:47:58
PoppaVic 2008/01/16 08:26:56 165 libpack is http://www.leonerd.org.uk/code/libpack LeoNerd!~leo@genoa.dictatorshipcake.co.uk 2017/10/20 12:37:51
LeoNerd 2011/07/07 08:50:12 7 libtermkey is http://www.leonerd.org.uk/code/libtermkey/ kate!~kate@unaffiliated/kate 2016/08/28 13:17:17
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/08/06 15:27:37 1 linkers is http://www.lurklurk.org/linkers/linkers.html korans!~korans@46.254.251.97 2016/07/22 16:10:50
PoppaVic 2011/07/09 20:26:52 1 lm is Link the bloody math library Hello71!Hello71@wikipedia/Hello71 2018/01/06 18:02:04
fstd!~fstd@unaffiliated/fisted 2016/11/05 10:33:17 2 local is /say There is no "local" scope in C. There are four kinds of scopes: function, file, block, and function prototype. A variable that appears inside of a function has block scope, which terminates at the end of the block. sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/03/03 20:32:59
sickle 2012/06/14 14:50:16 8 lock is /say In computer science, a lock is a synchronization mechanism for enforcing limits on access to a resource in a concurrent execution environment jp!ayy@youlosethega.me 2018/01/23 11:04:38 Saparok!~Saparok@47.183.79.48 2018/01/23 11:07:54
infobahn 2005/01/01 08:04:59 40 long is a signed integer data type, at least 32 bits wide, which must be able to represent (at least) all the integers in the range -2147483647 to +2147483647. Its lowest value, LONG_MIN, and highest value, LONG_MAX, are defined in <limits.h> AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:34:21
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/10/08 23:46:37 4 longlong is /say long long is a signed integer data type, at least 64 bits wide, which must be able to represent (at least) all the integers in the range -9223372036854775807 to +9223372036854775807. Its lowest value, LLONG_MIN, and highest value, LLONG_MAX, are defined in <limits.h> pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/10/08 23:48:06 Cobrax!~Cobrax@77.139.233.166 2017/06/14 04:45:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/10/08 23:46:57 6 longlonglong is /say long long long is too long for candide mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/05/05 19:30:20
Sebastian!uid71324@gateway/web/irccloud.com/x-uqvndqntaomdnmvk 2015/11/04 18:10:01 1 lowlevel is /say If everything remotely "low level" were to automatically become associated with C, ##C would be flooded with tonnes of irrelevant questions about assembly and hardware. esselfe!~bsfc@unaffiliated/esselfe 2018/07/10 14:23:23
Wulf_ 2009/08/31 12:09:01 15 lvalue is /say An lvalue is an expression that potentially designates an object. When its value is used, it is converted to the value stored in its deisgnated object. Only modifiable lvalues can be assigned to; these include non-const variables and pointer dereferences. edk!edk@spy/edk0 2016/02/29 05:31:51 dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/10/09 07:19:54
twkm 2004/12/30 18:40:03 1 lysator is http://www.lysator.liu.se/c/ mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 00:40:03
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/12/15 17:37:24 10 macroargopt is /say { #define ASSERT1(...) printf("[cond = %d]\n", __VA_ARGS__)\n #define ASSERT2(...) printf("[cond = %d, msg = %s]\n", __VA_ARGS__)\n #define ASSERTX(a, b, n, ...) n\n #define ASSERT(...) ASSERTX(__VA_ARGS__, ASSERT2(__VA_ARGS__), ASSERT1(__VA_ARGS__), 0)\n ASSERT(5, "hi"); ASSERT(42); } iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/21 11:59:27
twkm 2004/12/28 03:06:14 122 main is int main(int argc, char *argv[]); or int main(int argc, char **argv); or int main(void); or some other implementation-defined prototype; See also ``argc'' and ``argv''; the standard entry point to C programs k!~krok@unaffiliated/krok 2018/07/12 15:57:23 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/27 19:43:11
PoppaVic 2007/06/09 08:55:12 7 mainloop_io is http://www.linuxjournal.com/article/8545 PoppaVic
PoppaVic 2010/07/28 11:44:52 191 malloc is /call dontcastmalloc oldlaptop!~quassel@45.63.78.126 2019/04/07 18:56:55
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/14 11:05:04 11 malloc(0) is /say malloc(0) is implementation-defined. It could return either a null pointer or a non-null pointer that shouldn't be dereferenced. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/15 14:19:55 dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/05 05:02:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/02/17 12:11:54 128 mallocidiom is /call mallocsizeof othias!504e056b@80.78.5.107 2019/08/28 06:48:40
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/02/23 18:32:44 3 mallocobj is /say It's better to use the object instead of the type as argument to sizeof when allocating. int *p; p = malloc(sizeof *p); is preferable to p = malloc(sizeof (int)); because you can then later change p to long *p or some other type without having to worry about maintaining or forgetting to change the malloc. pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/02/23 18:33:57 muffindrake!~muffindra@unaffiliated/muffindrake 2017/06/11 10:49:47
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/04/18 15:06:21 155 mallocsizeof is /say T *p = malloc(sizeof *p) is a much more robust idiom than T *p = malloc(sizeof (T)) because there is no chance of the sizeof (T) failing to match up with the T that was used to declare p. It's also more concise and easier to read. fstd!~fstd@unaffiliated/fisted 2014/07/30 12:27:01 othias!504e056b@80.78.5.107 2019/08/28 06:48:40
fstd!~fstd@unaffiliated/fisted 2017/05/12 12:22:01 3 malware is /say For all your malware/spyware/ransomware needs, please join ##malware. dave0!~dave@168.215.dsl.syd.iprimus.net.au 2018/01/01 23:52:59
prev!~prev@unaffiliated/prev 2017/04/05 02:41:13 1 man-pages-posix is If you are using OS that tries to be POSIX-compliant, or if such OS is target platform, use POSIX manpages: `emerge man-pages-posix` in Gentoo; `apt-get install manpages-posix manpages-posix-dev` in Debian or Ubuntu; in Windows download man-pages-posix from https://tinyurl.com/man-pages-posix or download the POSIX from http://pubs.opengroup.org/onlinepubs/9699919799/download/ prev!~prev@unaffiliated/prev 2017/04/05 02:53:48
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/03/19 04:20:26 1 mantra is /say mantra for ##c pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/03/19 04:20:30
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/15 02:39:21 14 manuals is /say Manuals document the implementation-specific behaviors and properties that are associated with a given implementation. For learning C, it is instead recommended to consult with a C book or the C standard. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/15 02:50:11 dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/08/06 17:06:01
pragma_ 2012/01/10 09:46:17 2 mathsucks is http://thebestpageintheuniverse.net/c.cgi?u=math k!~krok@unaffiliated/krok 2017/11/13 20:42:32
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/12 18:59:58 24 meaninglessinitializers is /say Meaningless initializers are default initial values that act as a safety measure to avoid accessing uninitialized objects. This 'safety measure' doesn't fix your program and it severely reduces the capability to diagnose bugs. http://www.iso-9899.info/wiki/Meaningless_Initializers dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/12 19:06:10 dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/07/20 09:15:48
prec 2004/12/30 01:42:34 11 mem is a reserved function identifier prefix when followed by a lowercase letter meth!~meth@unaffiliated/meth 2018/01/11 16:10:58
boru!~boru@unaffiliated/boru 2014/06/01 12:48:12 7 memory is /say The structure of computer memory and how it is utilised is something with which all programmers should be familiar. See Drepper's paper: What Every Programmer Should Know About Memory: http://www.akkadia.org/drepper/cpumemory.pdf aozt!~aozt@unaffiliated/aozt 2019/08/07 12:54:05
nitrix!~nitrix@unaffiliated/nitrix 2014/05/31 18:34:31 2 meta is /call foobar dave0!~dave@32.060.dsl.syd.iprimus.net.au 2018/02/09 17:31:28
nitrix!~nitrix@unaffiliated/nitrix 2014/05/31 18:34:38 1 metasyntactic is /call foobar kate!~kate@unaffiliated/kate 2015/08/25 05:05:31
dave0!~dave@230.059.dsl.syd.iprimus.net.au 2017/09/01 03:39:46 8 mice is /say You are as sharp as a sack of wet mice. dave0!~dave@230.059.dsl.syd.iprimus.net.au 2017/09/02 01:15:26 APic!apic@apic.name 2018/04/08 13:11:42
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/14 03:55:50 3 mingw-printf is /say When using MinGW-w64 You should specify -D__USE_MINGW_ANSI_STDIO=1 for having a C99 compliant printf. dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/14 03:57:56 dorp!~dorp@89-139-60-29.bb.netvision.net.il 2019/05/16 08:16:23
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/14 21:01:17 36 modernc is /say 'Modern C' by Jens Gustedt (2017) is a free book that teaches C11. http://icube-icps.unistra.fr/index.php/File:ModernC.pdf nlu!uid374721@gateway/web/irccloud.com/x-uid374721 2019/08/20 19:38:12
PoppaVic 2010/04/18 09:43:56 36 muldim is http://c-faq.com/aryptr/dynmuldimary.html sha0 2012/04/09 20:04:50
Sarajevo 2012/04/03 19:51:39 0 my penis is defined as unsigned char nobody
pragma_ 2010/04/13 15:43:54 13 n1256 is http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf qwename!~qwename@unaffiliated/qwename 2017/08/08 04:55:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/12/29 14:05:11 19 n1570 is /call c11 jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/04 04:28:48
pragma_ 2011/09/09 04:34:23 17 nacq is /say Not a C question. Your question is not specific to the C programming language. Standard C does not know nor care about colors, mice, windows, keyboards, networks or any other system-specific things. Please tell us what OS, compiler, tools or libraries you are using/abusing; or find the appropriate channel. aozt!~aozt@unaffiliated/aozt 2019/07/14 18:42:13
prec 2005/02/11 11:49:05 3 nelemof is a standard idiom for computing the number of elements in an array variable: #define nelemof(array) (sizeof array/sizeof *array) n00p 2010/07/08 12:15:04
pragma- 2012/11/07 19:56:51 8 newjargon is http://www.codinghorror.com/blog/2012/07/new-programming-jargon.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/06/27 02:00:56
edk!~edk@spy/edk0 2016/02/04 12:38:26 4 newline is /say \n represents an implementation-defined character value, which is translated to and from the system end-of-line character sequence when written to or read from a stream in text mode. dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/05/31 14:58:56
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/27 11:14:47 23 nod is /code c11 puts("/me nods."); pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/27 11:16:21 nil!~n@monade.li 2019/08/29 10:44:36
n00p 2010/05/06 07:03:59 696 notC is /say That is not a C issue. This channel exists for discussion of the Standard C Language itself; not tools such as Makefiles, IDEs, compilers (see ##workingset for these things) or random libraries (including OS-specific ones such as POSIX or Windows; see ##posix or #winapi). pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/14 03:58:35 uso_!~matthias@ows-109-232-232-115.eu-west-2.compute.outscale.com 2019/09/05 02:52:40
nitrix!~nitrix@unaffiliated/nitrix 2013/11/22 23:24:59 5 nothere is /call notC nitrix!~nitrix@unaffiliated/nitrix 2013/11/22 23:28:34 immibis!~ChatZill1@122-61-226-17.jetstream.xtra.co.nz 2015/12/27 01:43:11
edk!~edk@spy/edk0 2015/08/25 05:38:32 3 nullp is /say Null pointers are pointer values that are guaranteed to compare equal to 0 and to other null pointers, and not to point at any object or function. edk!~edk@spy/edk0 2015/08/25 05:40:59 e!e@enucs/spy.edk 2018/03/06 07:01:03
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/08/25 05:44:59 2 nullptr is /call nullp e!e@enucs/spy.edk 2018/03/06 07:01:03
Wulf_ 2009/04/22 21:33:09 48 object is /say An object is a region of data storage in the execution environment, the contents of which can represent values. pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/01 03:19:06 dho!~dho@veep.9vx.org 2018/01/13 01:25:05
pragma_ 2005/01/17 14:39:55 1 objectcgi is See http://www.messners.com/objectcgi/objectcgi.html for a library to handle web CGI with C. n00p
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/11/18 14:15:05 26 ocd is /say Knock it off! There's an ongoing C discussion! pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/12/24 06:45:21 dho!~dho@veep.9vx.org 2018/03/05 12:01:19
FUZxxl!~fuz@d00m.org 2014/08/11 14:34:15 9 octet is An octet is a value represented by eight bits. It is not synonymous with a byte, but is the minimum width of a byte value as defined by the C standard. Other useful factoids: ,byte; ,char; ,char_bit. dho!~dho@veep.9vx.org 2018/02/12 10:04:32 autopsy!~autopsy@fedora/autopsy 2018/08/05 08:32:10
FUZxxl!~fuz@d00m.org 2014/08/11 14:37:47 3 octett is /call octet alyptik!ayy@youlosethega.me 2017/10/23 11:04:20
atk!~Arch-TK@fsf/member/Arch-TK 2017/02/01 11:38:55 152 offtopic is /say For discussion not related to standard C, please go to ##c-offtopic. This includes, but is not limited to, discussion about non-standard libraries, operating systems, cats, video games, cars, chess, etc. e!e@enucs/spy.edk 2017/12/31 14:06:33 dorp!~dorp@93-172-96-162.bb.netvision.net.il 2019/08/09 17:04:21
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/19 16:49:22 39 oneliner is /say Code snippets that consist of a one-liner often lack context. It's better to post a code sample (to a paste site) that illustrates your question. It should be minimal and compilable. dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/11/24 23:02:11 dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/07/09 10:52:21
LordOllie 2007/04/06 03:16:46 32 onlinek&r2 is /say If you cannot/will not buy k&r2 go here at least, then quit pissing and moaning. http://publications.gbdirect.co.uk/c_book/ fstd!~fstd@unaffiliated/fisted 2015/05/18 16:23:11 fstd!~fstd@unaffiliated/fisted 2015/05/18 16:21:45
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/11/01 09:57:32 13 ooc is /say Object-Oriented Programming With C: http://www.cs.rit.edu/~ats/books/ooc.pdf gl!~x@pwn.lu 2019/05/10 05:18:09
dho!~dho@veep.9vx.org 2018/02/14 15:25:57 1 opaque is /say An opaque type is a type whose contents are hidden. This is commonly used to require access and modifications to compound types to occur through an API. FILE * is an example of an opaque type in the standard library. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/18 15:35:46 dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/05/18 12:35:06
van7hu 2011/03/25 00:11:19 12 opprecedence is http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence dave0!~dave@230.059.dsl.syd.iprimus.net.au 2017/08/11 17:33:43
pragma- 2013/06/16 21:54:07 78 ops is /say caze, Chris, dho, e, kate, noselasd, pragma-, Saparok, twkm, Wulf, Xgc and Zhivago are channel operators here. jp!ayy@youlosethega.me 2018/01/01 14:03:58 horribleprogram!~horriblep@unaffiliated/nightcoder 2019/05/03 11:35:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/11/08 01:14:02 1 order is /say The Order Metalanguage for C Preprocessor Metaprogramming: https://github.com/rofl0r/order-pp \[!~qwename@unaffiliated/qwename 2017/09/07 08:55:27
PoppaVic 2010/02/20 15:42:16 17 ordermatters is /call compilerline PoppaVic 2012/02/17 12:30:45
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/02/01 17:31:30 136 ot is /call offtopic dorp!~dorp@93-172-96-162.bb.netvision.net.il 2019/08/09 17:04:21
n00p 2010/11/07 11:13:13 2 p2s is /say A pointer to a string is a pointer to its initial (lowest addressed) character. The length of a string is the number of bytes preceding the null character and the value of a string is the sequence of the values of the contained characters, in order. \[!~qwename@unaffiliated/qwename 2017/09/07 08:55:35
kulp 2013/02/11 08:45:48 2 p99 is /say Preprocessor macros and functions for C99 and C11: http://p99.gforge.inria.fr/ wlhlm 2013/07/19 15:06:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/01/17 15:31:50 290 parens is /call paren dorp_!~dorp@85-250-41-117.bb.netvision.net.il 2019/08/30 06:56:19
PoppaVic 2008/04/20 12:00:21 8 parsing is http://www.ddj.com/cpp/196603535 k!~krok@unaffiliated/krok 2018/01/24 12:03:32
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/19 18:53:21 47 passingarrays is /say When an object with an array type is passed to a function it's being converted to a pointer to the first element of the array type. Given int arr[3]; the function call: func(arr); is the same as: func(&arr[0]); See http://www.iso-9899.info/wiki/Passing_Arrays dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/21 16:44:51 dorp!~dorp@109-186-215-86.bb.netvision.net.il 2019/08/26 07:12:09
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/21 11:50:48 37 paste-lite is /say Please paste a code sample that illustrates your question. It should be minimal and compilable. dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/07/14 16:09:49
ouah 2011/08/06 05:01:55 76 pastetestcase is /say http://i.imgur.com/1qZwa2V.jpg profess_!~profess__@unaffiliated/csddesk 2015/02/27 19:20:28
twkm 2004/12/30 18:37:45 8 peril is http://www.pldaniels.com/c-of-peril/ Twey 2012/06/13 12:57:02
nitrix!~nitrix@unaffiliated/nitrix 2013/07/31 12:12:02 0 perseverance is /say In the realm of ideas everything depends on enthusiasm... in the real world all rests on perseverance. nobody
JoeQuery!~joequery@72-48-145-172.static.grandenetworks.net 2013/09/06 13:46:38 0 pgib: is that a relatively new addition to nobody
kate!~kate@unaffiliated/kate 2015/11/25 16:26:58 0 pikestyle is /say Notes on Programming in C: http://doc.cat-v.org/bell_labs/pikestyle nobody
PoppaVic 2008/02/19 11:48:40 14 pitfalls is /say Common C mistakes: http://www.drpaulcarter.com/cs/common-c-errors.html oldlaptop!~quassel@45.63.78.126 2017/12/15 13:16:57
d3738!05644814@gateway/web/freenode/ip.5.100.72.20 2019/05/15 02:26:44 0 pjp is /say The Standard C Library by P.J. Plauger. Prentice Hall, 1991. Shows you how to use the ANSI and ISO standard library functions. Also explains how the library was meant to be used. Can be purchased: https://www.abebooks.com/Standard-Library-P.J-Plauger-Prentice-Hall/11788721199/bd nobody
Baughn 2008/03/31 11:49:26 14 pointerfun is /call binky sickle 2012/06/14 14:34:05
pragma_ 2007/11/18 10:53:11 6 pointerops is /say The * operator makes an object from a pointer value. The & operator makes a pointer value from an object. kate!~kate@unaffiliated/kate 2017/11/21 05:51:13
CyL_Zz 2010/07/25 19:39:19 39 pointers is http://c-faq.com/ptrs/index.html no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/07/19 03:27:17
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/11/22 18:07:59 21 pointertoarray is /say A pointer to an array type can be useful for dynamically allocating contiguous arrays of arrays (multidimensional arrays). It shouldn't be confused with a pointer to pointer. Code snippet: int (*arr)[4] = malloc(2 * sizeof *arr); arr[1][3] = 123; dorp!~dorp@84.111.138.241 2017/12/26 12:01:25 dorp_!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/05 14:54:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/03/31 17:01:25 1 pointertutorial is http://pw1.netcom.com/~tjensen/ptr/pointers.htm o11c!~ben@unaffiliated/o11c 2017/11/25 17:59:33
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/02/10 08:33:16 1 polyglot is http://stchaz.free.fr/which_interpreter and http://ideology.com.au/polyglot/ pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/02/10 08:39:04 cousteau!~cousteau@80.174.59.84.dyn.user.ono.com 2014/02/24 16:30:25
fstd!~fstd@unaffiliated/fisted 2017/05/31 04:30:45 7 port is /say $arg[0] has been ported $arg[1:] (target platform id $digits$digits$digits$digits$digits) nai!~naim@monade.li 2019/05/03 14:57:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/03/01 23:10:35 6 port70 is /say HTML conversions of C standards: http://port70.net/~nsz/c/ o11c!~ben@unaffiliated/o11c 2015/09/15 17:49:07
n00p 2010/01/19 13:31:56 15 portability is very important: http://clc-wiki.net/wiki/C_community:comp.lang.c:Portability_attitude SneakySeb!~Sebastian@pa49-197-181-107.pa.qld.optusnet.com.au 2018/04/07 20:43:10
edk!~edk@spy/edk0 2015/08/12 01:31:19 13 posix is /say POSIX is the Portable Operating System Interface, <http://pubs.opengroup.org/onlinepubs/9699919799/>. ##posix exists; please consider taking your related questions there. dmlloyd!~dmlloyd@redhat/jboss/dmlloyd 2018/07/06 12:10:45
nitrix!~nitrix@unaffiliated/nitrix 2013/07/31 09:53:55 4 practice is /say Practice makes perfect. nitrix!~nitrix@unaffiliated/nitrix 2014/04/06 20:38:04
prec 2005/02/01 19:54:51 85 preccomma is the sequence operator. It is also used to separate syntactic elements of: function arguments in a function call, declarators (in declarations of the same type), formal parameters in function declarations, enumeration elements, and initializers. dave0!~dave@168.215.dsl.syd.iprimus.net.au 2017/12/28 17:47:38
sickle 2012/06/14 17:01:00 33 precedence is the order the compiler uses to evaluate C expressions. See http://softkorner.wordpress.com/2011/09/21/precedence-of-c-operators/ for a table of operator precedence and associativity Cyp_!~Cyp_@87-52-78-149-cable.dk.customer.tdc.net 2019/05/26 02:43:16
nitrix!~nitrix@unaffiliated/nitrix 2014/03/31 08:04:09 6 prejudice is /say There's little need to make generalizations about people who program with C. Some have interesting prejudices, others don't. In any case it will depend on the individual, and not the fact that they have a preference for a particular language. nitrix!~nitrix@unaffiliated/nitrix 2014/03/31 08:05:55 ManDay!~ManDay@unaffiliated/manday 2016/06/15 08:31:46
addatoo!~daem0n@c-98-204-134-144.hsd1.md.comcast.net 2013/11/30 18:45:56 8 previous is /say No refunds. rindolf!~rindolf@IGLD-84-229-97-84.inter.net.il 2019/07/30 02:21:40
cousteau!u291187@131.228.134.37.dynamic.jazztel.es 2016/03/05 12:25:18 7 printf%pchar* is http://www.iso-9899.info/n1570.html#6.5.2.2p6 jp!ayy@youlosethega.me 2017/12/05 15:57:16
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/21 02:33:13 8 printingerrors is /say For printing error messages based on enums, see the following snippets: http://www.iso-9899.info/wiki/Printing_Errors dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/05/15 01:51:07
angstrom 2011/07/05 10:08:19 2 procedure is /say A procedure is a sequence of operations over time. angstrom 2011/08/10 19:32:12
pragma- 2012/11/19 13:54:53 8 promotions is /call conversions fstd!~fstd@unaffiliated/fisted 2015/09/25 08:36:09
fstd!~fstd@unaffiliated/fisted 2014/09/06 19:15:15 3 protip is http://wiki.erepublik.com/images/6/6a/Protip.jpg doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/08/30 18:10:40
twkm 2005/01/06 10:14:48 17 prototype is a function declaration that also includes types for the parameters. izabera!~izabera@unaffiliated/izabera 2018/07/27 02:41:48
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/17 04:31:30 8 pstd is http://paste.pr0.tips/ k!~krok@unaffiliated/krok 2018/03/31 15:20:56
fstd!~fstd@unaffiliated/fisted 2017/05/31 05:17:34 5 purport is /say $arg[0] has been purported $arg[1:] (rumor id $digits$digits$digits$digits$digits) pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/26 18:27:43 nai!~naim@monade.li 2019/05/03 14:58:03
nitrix!~nitrix@unaffiliated/nitrix 2014/07/21 10:22:21 2 purpose is /say The purpose of the standard is to provide an unambiguous and machine-independent definition of the language. nitrix!~nitrix@unaffiliated/nitrix 2014/07/21 10:24:51 nitrix!~nitrix@unaffiliated/nitrix 2014/08/05 20:54:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/22 10:20:52 2 purr is /code c11 puts("/me purrs softly."); pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/01 18:01:04
twkm 2004/12/30 01:30:31 8 qsort is / qsort() sorts an array of data, #include <stdlib.h>, void qsort(void *base, size_t nelems, size_t elsize, int (*compar)(const void *, const void *)); returns nothing, see http://www.iso-9899.info/man?qsort dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/07/27 03:12:12
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/30 12:56:38 80 quick is /say Quick, somebody ask a C question! dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/06 09:20:41
dave0 2010/06/02 18:56:54 25 quine is #include <stdio.h> char *s = "#include <stdio.h> char *s = %c%s%c, c = '%c'; int main(void) { printf(s,c,s,c,c); return 0; }", c='"'; int main(void) { printf(s,c,s,c,c); return 0; } pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/10/18 05:32:44 nil!~n@monade.li 2019/09/04 09:56:08
pksadiq!~user@106.208.126.239 2016/07/20 08:59:27 11 quit is /quit gone nil!~n@monade.li 2019/08/10 07:44:49
pksadiq!~user@106.208.126.239 2016/07/20 08:58:25 1 quitme is /quit pksadiq!~user@106.208.126.239 2016/07/20 08:58:33
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/06/06 17:36:16 0 quut is /say Some C history, literature and culture: http://www.quut.com/c/ nobody
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:08:21 2 ramblings-atoi is /say http://ramblings.implicit.net/posts/2014/4/27/c-functions-that-should-be-avoided marchelzo!~marchelzo@216.83.6.45 2015/08/21 07:45:38
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:09:27 0 ramblings-cstring is /say http://ramblings.implicit.net/posts/2014/4/27/c-has-no-string-type nobody
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:08:28 0 ramblings-gets is /say http://ramblings.implicit.net/posts/2014/4/27/c-functions-that-should-be-avoided nobody
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:12:20 3 ramblings-ptrvsarray is /say http://ramblings.implicit.net/posts/2014/4/19/the-confusion-between-pointers-and-arrays edk!~edk@spy/edk0 2015/10/22 07:08:42
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:10:24 1 ramblings-ptrvsint is /say http://ramblings.implicit.net/posts/2014/4/20/pointers-are-not-integers dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/21 19:54:31
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:06:44 4 ramblings-scanf is /say http://ramblings.implicit.net/posts/2014/5/4/c-functions-that-should-be-avoided-part-3-scanf marchelzo!~marchelzo@hlfxns016cw-156057132245.dhcp-dynamic.FibreOp.ns.bellaliant.net 2015/08/15 18:41:44
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:10:52 1 ramblings-stack is /say http://ramblings.implicit.net/posts/2014/4/21/there-is-no-stack cousteau!~cousteau@unaffiliated/cousteau 2016/11/28 03:02:00
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:07:48 3 ramblings-strncpy is /say http://ramblings.implicit.net/posts/2014/5/2/c-functions-that-should-be-avoided-part-2 kate!~kate@unaffiliated/kate 2016/10/01 08:35:41
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:11:19 1 ramblings-tias is /say http://ramblings.implicit.net/posts/2014/4/20/c-is-not-a-try-it-and-see-language marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/11 21:04:24
marchelzo_!~marchelzo@unaffiliated/marchelzo/x-2669545 2015/07/09 23:07:15 2 ramblings-websites is /say https://ramblings.implicit.net/c/2014/05/03/do-not-trust-random-websites-about-c.html jp!ayy@youlosethega.me 2018/04/20 17:40:55 marchelzo!~marchelzo@unaffiliated/marchelzo 2015/10/19 10:08:40
twkm 2004/12/30 01:03:51 34 rand is pseudo-random number generator, #include <stdlib.h>, int rand(void); returns the next number in the sequence in the range [0,RAND_MAX], see http://www.iso-9899.info/man?rand and http://www.azillionmonkeys.com/qed/random.html dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/05/31 00:39:16
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/06 19:16:54 15 randomkr is /call $krexercises pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/09/30 09:45:20
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/07/31 09:48:28 3 randomtesting is /say Due to the nature of undefined/implementation-specific/unspecified behavior, testing random code is not a adequate way of determining if something really does work. fizzie!fis@unaffiliated/fizzie 2016/01/13 07:34:00
pragma- 2012/08/03 16:06:10 1 reading-declarations is http://www.antlr.org/wiki/display/CS652/How+To+Read+C+Declarations wlhlm 2013/07/19 15:10:01
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/22 23:11:29 31 realloc is /say For common issues related to realloc, see http://www.iso-9899.info/wiki/Realloc no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/08/23 03:09:17
pragma- 2013/06/08 12:51:52 1 recursion-vs-iteration is http://benpfaff.org/writings/clc/recursion-vs-iteration.html wlhlm 2013/07/19 15:00:47
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/06/02 12:07:53 0 reesoo is /say J. Rees on how object-oriented programming is defined: http://paulgraham.com/reesoo.html nobody
twkm 2004/12/30 18:38:47 39 reference is http://www.acm.uiuc.edu/webmonkeys/book/c_guide/ Xatenev!~Xatenev@business-90-187-21-89.pool2.vodafone-ip.de 2018/01/11 02:40:22
pragma_ 2005/02/09 14:51:03 2 referencedtype is "a pointer type may be derived from a function type, an object type, or an incomplete type, called the referenced type. A pointer type describes an object whose value provides a reference to an entity of the referenced type. A pointer type derived from the referenced type T is sometimes called ``pointer to T''. The construction of a pointer type from a referenced type is called ``pointer type derivation''." lemonade`
pragma_ 2005/02/10 18:08:39 7 references is /say C does not have pass-by-reference or "heavy" references like C++ or some other languages do. C does have a definition of references that is probably not what you want or need to know about, see: referencedtype esselfe!~bsfc@unaffiliated/esselfe 2018/07/10 14:24:18
pragma_ 2008/03/13 08:55:35 3 regexp is http://swtch.com/~rsc/regexp/regexp1.html PoppaVic
pragma_ 2005/02/05 12:49:40 36 register is a storage-class specifier for an object that suggests that access for the object be as fast as possible. The extent to which the suggestion is effective is implementation defined. Whether or not addressable storage is actually used, the address of any part of an object declared with storage-class specifier register cannot be computed. mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/04/11 12:55:50
boris`` 2010/11/03 01:47:07 2 registers is /say If you have a question about accessing registers in C, please don't ask us. Standard C has no way of manipulating hardware registers. We don't know what compiler or platform you're using. You should be reading the documentation instead. stark!stark@unaffiliated/stark 2016/03/11 09:50:25
Baughn 2008/02/13 12:48:10 3 religion is http://www.iso-9899.info/wiki/Religion temp_trisquel!5eb3252b@gateway/web/freenode/ip.94.179.37.43 2018/02/15 10:09:47
dave0 2010/06/05 18:23:07 7 remove_char_from_string is while((ptr=strchr(str, 'w')))memmove(ptr,ptr+1,strlen(ptr)); dave9!~dave@90.20.215.218.dyn.iprimus.net.au 2018/08/10 02:02:39
dave0!~dave@32.060.dsl.syd.iprimus.net.au 2018/03/11 20:49:29 3 remove_string_from_string is while(ptr=strstr(str,rem))memmove(ptr,ptr+strlen(rem),strlen(ptr)-strlen(rem)+1); dave9!~dave@90.20.215.218.dyn.iprimus.net.au 2018/08/10 02:02:48
pragma_ 2005/01/27 00:12:28 31 resources is http://www.lysator.liu.se/c/ - http://www.iso-9899.info/wiki/Web_resources - http://www.iso-9899.info/wiki/Books - See also: reference muffindrake!~muffindra@unaffiliated/muffindrake 2018/07/25 13:45:28
twkm 2005/01/10 23:07:34 26 restrict is a type qualifier, which may only be used with a pointer type, and which requires that objects referenced through such a pointer must be made through a single pointer value, i.e., no aliases / pointers into other parts of the object are allowed Wulf!~Wulf@unaffiliated/wulf 2019/06/27 10:59:59
k!~krok@unaffiliated/krok 2018/03/29 20:33:14 0 retrun is /say `retrun` is a common typo of `return`. Use `#define retrun return` to rectify the problem for good. nobody
dave0!~dave@168.215.dsl.syd.iprimus.net.au 2017/11/12 22:31:45 43 rot13 is /code sh echo $@ | tr a-zA-Z n-za-mN-ZA-M jp!ayy@youlosethega.me 2017/12/05 11:06:35 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/13 05:25:14
alyptik!ayy@youlosethega.me 2017/09/08 17:40:36 8 rot26 is /say $args veltas!~veltas@104.236.34.215 2018/01/02 01:51:49
alyptik!ayy@youlosethega.me 2017/09/16 06:44:23 1 rotl3 is /say noob alyptik!ayy@youlosethega.me 2017/09/16 06:44:30
fstd!~fstd@unaffiliated/fisted 2016/12/28 18:02:35 3 roulеtte is /kick $nick is a silly cheater. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/02 20:08:44 nil!n@monade.li 2019/06/19 12:24:10
fstd!~fstd@unaffiliated/fisted 2017/10/09 11:18:21 5 rovlette is /say $nick: *click* k!~krok@unaffiliated/krok 2017/12/04 15:41:22
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/07/06 17:41:16 2 rsize_t is /say The type rsize_t is equivalent to the type size_t but with a runtime-constraint violation if the value is greater than RSIZE_MAX. k!~krok@unaffiliated/krok 2018/01/20 11:08:59
PoppaVic 2007/10/19 15:38:37 16 rtfb is /say Read the @#&ing Book - Your primary guide for learning C should be a good book (see http://www.iso-9899.info/wiki/Books). You must not expect to become a proficient C programmer just from reading crappy online `tuts', staring at other people's code, and/or boring us to death by asking dozens of exceedingly trivial questions. protege!~shynoob@182.59.209.11 2017/02/05 00:42:19
oldlaptop!~quassel@45.63.78.126 2019/05/21 12:32:39 12 rules is /say There are 3 simple rules for learning C effectively and successfully: 1. Follow a proper book, 2. Do the exercises, 3. Share your code samples with others and ask for comments/review. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/26 10:35:49 dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/09/05 17:59:41
nitrix!~nitrix@unaffiliated/nitrix 2013/12/16 15:08:28 10 runtime is /say The greatest trick that C ever pulled was convince the world that it does not have a runtime. meth!~meth@unaffiliated/meth 2018/01/10 16:55:26
ment 2009/08/25 10:09:23 3 s&w is /say /When k&r fails, try http://www.smith-wesson.com/ LangerJan!~jg@p4FDCB74E.dip0.t-ipconnect.de 2013/10/23 07:50:51
kate!~kate@unaffiliated/kate 2015/01/12 08:26:55 4 sallyanne is /say The Sally-Anne test: https://outrunningthestorm.files.wordpress.com/2012/06/sallyanne.gif dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/21 18:27:13
nitrix!~nitrix@unaffiliated/nitrix 2013/11/06 11:22:40 9 sauce is /say I wrote a program in C that suggests recipes. One of them is a lasagne sauce. Should I make it sweet or spicy? It's written in C. Please. edk!edk@unaffiliated/edk 2013/12/23 14:30:45 clumsy_boy!~leoni@181.26.8.127 2018/01/21 03:43:51
Major-Willard 2005/01/28 19:40:12 501 scanf is a function that can be unsafe and unproductive - "It's nearly impossible to do decent error recovery with scanf; usually it's far easier to read entire lines (with fgets or the like), then interpret them, either using sscanf or some other techniques." - See http://www.eskimo.com/~scs/C-faq/q12.20.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/09/15 16:52:50 kurahaupo!~kurahaupo@2002:ca1b:c76f:2::1a0b:1 2019/09/01 19:29:20
n00p 2010/01/31 15:56:12 16 scanf_is_stupid is /say It looks like the !scanf factoid was unsuccessful at convincing you not to use scanf(). scanf() isn't really that stupid, providing you know how to use it correctly. Chris Torek explains some problems with the way scanf() is commonly used and provides methods of solving those problems here: http://bytes.com/topic/c/answers/215517-warning-against-scanf#post840862 kate!~kate@unaffiliated/kate 2018/01/07 15:46:13
n00p 2011/04/24 16:02:37 0 scanf_is_stupid_is_stupid is /say Your mother! nobody
pragma_ 2010/06/30 19:01:47 30 schildt is /say Please avoid Herbert Schildt's C books. See http://www.seebs.net/c/c_tcn4e.html and http://www.lysator.liu.se/c/schildt.html -- Other stuff to avoid: http://www.iso-9899.info/wiki/Main_Page#Stuff_that_should_be_avoided dave9!~dave@207.213.dsl.syd.iprimus.net.au 2018/05/30 06:25:19
pragma_ 2011/12/14 19:10:50 18 scope is /call global qwename!~qwename@unaffiliated/qwename 2017/08/28 00:27:02
kate` 2008/02/01 05:32:49 2 seed is http://www.stanford.edu/~blp/writings/clc/random-seed.html latch!~latch@unaffiliated/latch 2016/06/03 14:49:54
igli 2008/06/07 14:35:12 0 seqpoint is http://c-faq.com/expr/seqpoints.html nobody
Wulf_ 2010/01/15 09:07:55 16 sequencepoint is /say Evaluation of an expression may produce side effects. At certain specified points in the execution sequence called sequence points, all side effects of previous evaluations shall be complete and no side effects of subsequent evaluations shall have taken place. dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/12/15 06:27:54
PoppaVic 2010/02/21 20:01:44 39 serialize is packing structures, usually portably for later extraction: see man 3 xdr as well as http://tpl.sourceforge.net/ and http://www.leonerd.org.uk/code/libpack/ marchelzo!~marchelzo@unaffiliated/marchelzo 2017/01/31 16:23:50
pragma_ 2009/06/02 13:25:21 22 sex is /say Sex is allowed in ##C only on weekdays starting with 'U'. jp!ayy@youlosethega.me 2018/01/24 10:11:43
korans!~korans@46.254.251.97 2016/07/24 13:56:40 7 shh is /say STFU $args knytt!~quassel@68-119-220-200.dhcp.hckr.nc.charter.com 2017/04/25 08:54:22
infobahn 2005/01/01 08:03:49 19 short is a signed integer data type, at least 16 bits wide, which must be able to represent (at least) all the numbers in the range -32767 to +32767. Its lowest value, SHRT_MIN, and highest value, SHRT_MAX, are defined in <limits.h> AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:32:26
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/09/04 17:43:20 3 shuffle is /say { srand(time(0)); int array[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, end = 10; while(end > 0) { int random = rand() % end; end--; int temp = array[end]; array[end] = array[random]; array[random] = temp; } for(int i = 0; i < 10; i++) printf("%d ", array[i]); } BenGoldberg!~BenGoldbe@ool-18bca78c.dyn.optonline.net 2017/03/31 22:02:27
jp!ayy@youlosethega.me 2018/01/14 17:11:59 5 simplifying is /say Simplifying is something that should be /simple/. If it isn't then your code is needlessly complex; it often would actually be faster to remake that particular section from scratch. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/14 17:34:44 jp!ayy@youlosethega.me 2018/01/20 20:54:49
nitrix!~nitrix@unaffiliated/nitrix 2014/04/08 13:03:39 18 sing is /me sings: "Soft kitty, warm kitty, little ball of fur~ Happy kitty! Sleepy kitty! Purr, purr, purr~" \o`!~z3n0@unaffiliated/z3n0 2019/05/21 11:23:04
nitrix 2013/07/04 17:44:24 6 sir is /say All I ask is that you be a sir. Fancy mustaches, top hats, and monocles are scientifically proven to impress the ladies. blue403!~smurfa@unaffiliated/smurfa 2015/05/20 02:38:58
twkm 2004/12/30 19:06:11 6 sitestats is http://www.iso-9899.info/webstats/ qwename!~qwename@unaffiliated/qwename 2018/01/28 20:14:09
prec 2005/02/06 23:10:23 88 size_t is an unsigned integer type which is the result type of the sizeof operator. A size_t variable can store the size of any object. C90: printf("%lu\n", (unsigned long)sizeof a); C99: printf("%zu\n", sizeof a); dorp!~dorp@89-139-60-29.bb.netvision.net.il 2019/05/10 08:16:50
prec 2005/02/11 20:13:11 129 sizeof is /say The sizeof operator yields a size_t, that is the size (in bytes) of its operand, which may be an expression or the parenthesized name of a type. e.g. `sizeof expr` and `sizeof (int)`. That expression is not evaluated unless it is a variable-length array. sizeof does not have function call semantics; don't confuse people by writing it with function call syntax.

with_args: /call cc sizeof $args
edk!~edk@spy/edk0 2015/07/10 10:58:11 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/28 11:39:00
pragma_ 2012/01/07 14:08:41 1 slang is http://umumble.com/blogs/Programming/321/ cousteau 2012/07/04 09:16:18
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/07/31 14:37:45 2 smallchild is /say http://i.imgur.com/uqKRkxc.png pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/07/05 14:48:30
twkm 2004/12/30 18:39:54 4 smarties is http://www.torek.net/torek/c/index.html korans!~korans@46.254.251.97 2016/07/24 13:10:57
boru!~boru@unaffiliated/boru 2013/08/17 06:39:07 10 smartq is /say Learning how to effectively ask questions is beneficial for all. See http://www.catb.org/esr/faqs/smart-questions.html or https://tools.ietf.org/html/rfc1855 boru!~boru@unaffiliated/boru 2018/02/15 02:18:57 edk!~edk@spy/edk0 2015/10/16 10:56:48
PoppaVic 2008/02/23 08:23:46 7 snippets is http://www.iso-9899.info/wiki/Snippets PoppaVic
Wulf 2011/09/23 21:03:55 36 so is http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html zenix_2k2!~zenix@unaffiliated/zenix-2k2/x-8691202 2019/08/10 07:33:07
snhmib 2009/03/07 00:23:09 1 sometypes is "char a[1]" "char a[2]" "int a" "void a" "void* a[6]" rsca 2010/11/16 19:25:35
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/12/15 02:33:31 4 spam is /call query oldlaptop!~quassel@45.63.78.126 2018/07/20 08:41:29
Draconx|Laptop 2007/12/18 17:37:18 13 spiral is The "Clockwise/Spiral Rule" is a technique for understanding C declarations. See http://c-faq.com/decl/spiral.anderson.html marchelzo!~marchelzo@unaffiliated/marchelzo 2017/02/12 19:21:29
pragma_ 2010/04/17 12:15:20 19 sscanf is /say The sscanf function is similar to scanf, except that its input comes from a string instead of a stream. fgets is commonly used prior to sscanf to provide a simple approach which doesn't leave unmatched bytes on the stream, unlike scanf. Note that sscanf's and sprintf's format specifiers are not perfectly reflective, and that it is possible for fgets to fetch part of a line. aozt!~aozt@unaffiliated/aozt 2019/06/15 04:16:53
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/24 09:29:24 8 ssize_t is /say The ssize_t type is not a C standard type, it is part of POSIX. Its required range is [-1, 32767] and it's described as: "Used for a count of bytes or an error indication" dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/24 09:36:00 dorp!~dorp@93-172-96-162.bb.netvision.net.il 2019/08/15 00:54:50
guidj0s 2011/07/26 18:02:35 175 stack is /say C does not require implementations to use stacks or heaps. Please refer to the actually defined storage durations, which are four: allocated, automatic, thread and static. kb_!~xmen@unaffiliated/kb-/x-5420346 2019/09/06 02:44:51
pragma_ 2009/02/27 12:04:52 1 stacktrace is http://www.tlug.org.za/wiki/index.php/Obtaining_a_stack_trace_in_C_upon_SIGSEGV pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/09/07 20:52:24
kate` 2009/08/06 10:05:26 654 standard is C89/C90 draft: http://port70.net/~nsz/c/c89/c89-draft.html - C99 + TC1,2,3 working paper: http://open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf - C11 draft: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf - Quick C library reference: http://goo.gl/n3TYMD - An explanation of all C standards: http://clc-wiki.net/wiki/The_C_Standard edk!~edk@spy/edk0 2015/06/25 17:29:48 dorp!~dorp@46-116-103-163.bb.netvision.net.il 2019/08/08 06:03:05
pragma_ 2012/01/03 19:00:55 19 standards is /call standard fizzie!fis@unaffiliated/fizzie 2017/08/29 02:48:23
Major-Willard 2005/01/28 21:36:16 74 static is used if the function/variable should be limited to one source file, at translation unit scope; variables of this storage class are initialised to zero; variables of this storage class which are declared in functions maintain their value between calls to the function no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/08/13 16:21:24
pragma- 2013/02/05 01:26:45 433 std is /say For a list of links to C standards, use the `standard` factoid; for citing the C99 standard, use `c99std`; for citing the C11 standard, use `c11std`

with_args: /say Standard C has no notion of '$args', so you must be talking about some specific OS, library, tool, implementation, architecture, et cetera. These are beyond the scope of this channel, which focuses on Standard C.
twkm!twkm@rfc1459.net 2019/08/14 23:53:56
NeverDream 2005/02/16 12:23:31 4 std:: is C++, not C. Try #c++ Vigud 2013/01/25 04:04:43
prec 2004/12/30 03:05:16 9 stdarg is interfaces for handling variable argument lists; #include <stdarg.h>; void va_start(va_list ap, arg); void va_copy(va_list dest, va_list src); type va_arg(va_list ap, type); void va_end(va_list ap); see http://www.iso-9899.info/man?stdarg dave0!~dave@32.060.dsl.syd.iprimus.net.au 2018/01/31 17:42:47
pragma_ 2011/02/10 18:32:53 167 stdc is /call cstd yoker!~Thunderbi@cpc136214-broo9-2-0-cust540.know.cable.virginm.net 2018/08/06 02:29:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/08 00:22:38 0 stdcvim is /call c99vim nobody
Major-Willard 2005/01/01 13:50:52 1 stderr is a FILE *, traditionally associated with file descriptor 2 s00p
Major-Willard 2005/01/01 13:49:42 18 stdin is a FILE *, traditionally associated with file descriptor 0, using fflush() with it is generally pointless dorp!~dorp@46.120.11.7 2014/06/06 08:29:44
pragma_ 2007/10/31 21:44:48 31 stdinflush is /say Will fflush(stdin) flush unread characters from the standard input stream? No! See http://www.c-faq.com/stdio/stdinflush.html and http://www.c-faq.com/stdio/stdinflush2.html cousteau!~cousteau@unaffiliated/cousteau 2017/12/06 11:33:49
dave0!~dave@32.060.dsl.syd.iprimus.net.au 2018/03/11 20:34:00 0 stdio_snippet is int c;while(c=getchar(),c!=EOF)if(putchar(c)==EOF)break; nobody
Major-Willard 2005/01/01 13:50:10 2 stdout is a FILE *, traditionally associated with file descriptor 1 Major-Willard
kate` 2008/09/16 14:29:23 42 storage is /call linkageandstorage ski!~ski@remote11.chalmers.se 2019/08/02 08:01:23
prec 2004/12/30 01:39:12 10 str is a reserved file-scope identifier prefix when followed by a lowercase letter sm0ke!~sm0ke@unaffiliated/sm0ke 2015/09/17 01:15:10
pragma_ 2010/11/03 11:07:18 9 strcat is /say IT CAN ALL GO WRONG! NH!~NextHendr@unaffiliated/nexthendrix 2019/09/05 07:57:17
fstd!~fstd@unaffiliated/fisted 2017/10/02 06:58:03 2 strchr is evil othias!504e056b@gateway/web/freenode/ip.80.78.5.107 2017/10/06 07:40:08
pragma_ 2010/11/03 11:07:10 19 strcpy is /say IT CAN ALL GO WRONG! qwe737672!~kribesk@dslb-178-010-119-033.178.010.pools.vodafone-ip.de 2018/02/27 09:49:40
kate` 2007/05/15 13:52:46 155 string is /say A "string" is a contiguous sequence of characters terminated by and including the first null character; http://www.iso-9899.info/wiki/String Wulf!~Wulf@unaffiliated/wulf 2019/07/14 04:06:22
pragma_ 2011/02/02 15:28:15 11 stringification is /say C pre-processor stringification macros: http://gcc.gnu.org/onlinedocs/cpp/Stringizing.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/11 12:51:54 Wulf!~Wulf@unaffiliated/wulf 2019/08/06 02:10:28
pragma_ 2011/02/02 15:28:30 4 stringify is /call stringification pragma_ 2012/02/28 16:41:38
dorp!~dorp@84.111.138.241 2018/01/03 10:26:54 16 stringliteral is /say The attempt to modify a string literal has undefined behavior; an array may be initialized by a string literal, modifying such an array is well-defined. char arr[] = "string"; dorp!~dorp@89-139-210-198.bb.netvision.net.il 2019/08/23 00:29:31
n00p 2010/11/07 11:19:52 2 stringptr is /say A pointer to a string is a pointer to its initial (lowest addressed) character. See also: !string maxxe!~maxxe@unaffiliated/maxxe 2014/08/04 11:36:39
pragma_ 2008/03/05 00:26:49 27 strncpy is http://c-faq.com/lib/strncpy.html and http://blogs.msdn.com/oldnewthing/archive/2005/01/07/348437.aspx dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/12/04 23:58:51
fstd!~fstd@unaffiliated/fisted 2015/03/09 20:03:28 2 strtol is /say The strtol() function converts a string to a long int value in a way that allows the caller to do meaningful error handling. izabera!~izabera@unaffiliated/izabera 2017/07/14 18:58:18
Major-Willard 2005/01/04 16:52:42 87 struct is used to define an abstract data type containing other (possibly nested) data types database2!~ashu@117.225.104.227 2019/04/29 18:25:26
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/11 04:25:11 4 structpacking is /say The Lost Art of C Structure Packing: http://www.catb.org/esr/structure-packing/ dave0!~dave0@069.d.003.ncl.iprimus.net.au 2019/07/25 07:13:31
uuhimhere!~uuhimhere@1.9.98.51 2015/04/01 04:28:14 1 subroutine is a generic definition for any segment of reusable code. see callback uuhimhere!~uuhimhere@1.9.98.51 2015/04/01 04:28:22
fstd!~fstd@unaffiliated/fisted 2016/05/24 15:27:20 16 subtitles is /say Enabling subtitles. Others should now be able to decipher your retarded language. Learath2!~learath2@unaffiliated/learath2 2019/04/12 14:39:08
prec 2005/02/20 15:50:44 46 support is /say If you are looking for support for a particular piece of software, you are in the wrong place. This channel exists for C programmers and those aspiring to be C programmers -- it is not a general software support channel. pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/11 03:55:30 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/10/25 10:42:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/02 20:12:29 11 survey is /call poll Chris!sid107964@spy/chris 2017/11/12 20:43:22
Wulf 2012/03/23 22:04:05 1 sus is /say The Single UNIX Specification - http://www.unix.org/single_unix_specification/ wlhlm 2013/07/19 15:13:21
zid`!zid@zid.0bit.org 2014/02/12 13:28:19 1 svn is evil zid`!zid@zid.0bit.org 2014/02/12 13:28:44
pragma_ 2008/01/04 13:05:39 2 system-dependent is /call doesntcare jwillia3
gamag 2007/12/22 05:29:15 3 t&g is The C Answer Book by Clovis L. Tondo and Scott E. Gimpel. daowee!~daowee@m83-185-149-136.cust.tele2.se 2013/09/21 21:05:23
Maxdamantus 2013/04/18 16:56:51 3 tautology is /say Tautologies are things that are tautologous. wlhlm 2013/07/19 15:04:18
jp!ayy@youlosethega.me 2018/02/25 01:28:27 0 tc is /call testcase nobody
pragma- 2012/05/05 02:41:33 1 teachingmath is http://www.personal.psu.edu/drg16/evolution%20of%20teaching%20math.pdf wlhlm 2013/07/19 15:13:02
Cin 2007/11/11 19:46:12 0 terminator is http://img223.imageshack.us/img223/7959/stringliteralgg3.png nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/04/18 13:31:03 2 ternary is /say ?: is called the conditional operator. Some people refer to it as the ternary operator. This is not its name. While it is currently the only operator in C that takes three operands, this may not always be the case. It's just a description of it, not its name. It's called the conditional operator. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/01 16:55:27 supernov1h!~matt.perr@202.180.67.246 2018/08/01 16:53:31
kate`!~kate@unaffiliated/kate/x-0000001 2014/02/15 11:45:17 2 terrible is /say Programing is terrible. https://www.youtube.com/watch?v=csyL9EC0S0c rob``!~rob@gtng-4db0456a.pool.mediaWays.net 2014/03/25 16:53:49
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/10 15:28:20 3 test case is /call testcase pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/10 15:32:41
pragma- 2013/07/04 12:33:39 7 testcaseorgtfo is /say http://i.imgur.com/1qZwa2V.jpg pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/29 18:22:09
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/10/11 08:08:16 6 testing is /say C unit testing frameworks: http://check.sourceforge.net and https://github.com/Tuplanolla/cheat dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 04:22:47
ouah 2011/01/24 07:48:45 49 therule is /say The Rule, as Chris Torek calls it, is outdated, wrong and mostly useless. If you want to read it anyway, it says: "In a value context, an object of type "array N of T" (for suitable size N and element type T) becomes a value of type "pointer to T", pointing to the first element of that array, i.e., the one with subscript 0." http://web.torek.net/torek/c/pa.html edk!~edk@spy/edk0 2015/09/08 00:15:08 caze!~caze@unaffiliated/caze 2019/05/15 20:31:08
glacial!~glacial@unaffiliated/glacial 2018/07/07 20:36:04 0 threads is http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-1.pdf || POSIX Threads programming: https://computing.llnl.gov/tutorials/pthreads/ nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/02/24 06:25:30 2 threestar is /call 3star cousteau!~cousteau@unaffiliated/cousteau 2018/02/04 11:02:37
Spark 2008/12/11 00:44:31 305 tias is /say "Try It And See" may work in other languages, but not in C due to the nature of undefined behavior/unportable code. Such coding-by-experimentation often leads to situations such as "But it worked fine earlier!" and/or "But it worked on my machine!". https://goo.gl/jPWRA9 marchelzo!~marchelzo@unaffiliated/marchelzo 2016/12/11 16:33:48 dorp!~dorp@85-250-41-117.bb.netvision.net.il 2019/08/31 08:16:18
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/17 15:38:14 27 tias-lite is /say "Try It And See" may work in other languages, but not in C due to the nature of undefined behavior/unportable code. https://goo.gl/jPWRA9 dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/08/05 09:14:33
Skapare 2011/11/12 20:20:51 1 timezone is none of my concern qwename_!~qwename@unaffiliated/qwename 2017/07/15 03:20:07
prec 2004/12/30 01:50:19 28 to is a reserved function identifier prefix when followed by a lowercase letter Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/19 11:40:04
pragma_ 2007/10/30 23:36:03 36 top10 is /say Top 10 beginner mistakes: http://www.andromeda.com/people/ddyer/topten.html (Bonus: find the mistakes within the mistakes!) iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/02 10:12:40
pragma- 2012/08/18 18:08:10 3 translation is /call tu haavard!root@haavard.me 2018/02/26 16:29:38
pragma- 2012/08/18 18:08:13 2 translation-unit is /call tu Tuplanolla 2012/09/04 13:21:07
fstd!~fstd@unaffiliated/fisted 2017/05/31 05:16:22 16 transport is /say $arg[0] has been transported $arg[1:] (container id $digits$digits$digits$digits$digits) nh!NextHendri@unaffiliated/nexthendrix 2019/08/03 13:13:10
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/08/06 13:19:38 4 tricky is /say https://www.youtube.com/watch?v=l-O5IHVhWj0 atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/01/17 14:29:10
PoppaVic 2008/03/12 10:32:25 3 trie is http://www.cs.bu.edu/teaching/c/tree/trie/ eyepatch!6cd60cfa@gateway/web/freenode/ip.108.214.12.250 2016/08/14 17:33:31
twkm 2004/12/31 20:06:13 6 trigraph is a three character sequence beginning with two question marks, intended to make using C possible on systems where the usual punctuators are missing, typically from keyboards. these sequence is replaced during phase 1 of translation and takes place even within quoted strings. RicardasSim!~RicardasS@78-63-172-44.static.zebra.lt 2019/04/08 10:11:58
PoppaVic 2007/09/10 13:20:15 17 truth is http://www.cs.virginia.edu/~evans/cs655/readings/ewd498.html pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:01:14
pragma- 2012/08/18 18:07:30 22 tu is /say A source file together with all the headers and source files included is known as a preprocessing translation unit . After preprocessing, a preprocessing translation unit is called a translation unit. The separate translation units of a program communicate by (for example) calls to functions whose identifiers have external linkage, manipulation of objects whose identifiers have external linkage, or manipulation of data files. no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/08/16 02:39:02
pragma_ 2005/02/16 15:41:32 56 tutorial is http://www.iso-9899.info/wiki/Web_resources#Getting_Started cousteau!~cousteau@unaffiliated/cousteau 2017/12/11 11:11:56
Jafet 2008/07/15 03:33:24 29 tuts is /say Almost every "tutorial" on the web is written by a person who does not know C well. Would you learn C from such a person? Obtain a good C book (see ,books) and read it. pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/08/09 13:52:39 dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/10/28 07:34:15
pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/10/30 05:36:52 100 typedef is /say Blindly typedefing all structs "just because" is one of the greatest abuses of typedefs in C -- don't do this. Only typedef structs when they are supposed to be opaque types that are manipulated strictly via accessor/mutator functions. Never use typedef to create a pointer type. pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/10/30 05:37:27 atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2019/06/24 13:59:04
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/20 06:31:18 18 typedeffunction is /say You can typedef a function type which is not a pointer type. Snippet: http://www.iso-9899.info/wiki/Typedef_Function_Type dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/08/10 02:01:29
latch!~latch@unaffiliated/latch 2016/03/15 07:52:37 0 typedefs is http://yarchive.net/comp/linux/typedefs.html nobody
PoppaVic 2010/11/12 22:16:45 9 types is http://www.ibm.com/developerworks/power/library/pa-ctypes3/ -- http://www.ibm.com/developerworks/views/power/libraryview.jsp?search_by=everything+you+ever+wanted+to+know+about+C+types Retr0id!~null@host86-177-223-109.range86-177.btcentralplus.com 2017/01/18 04:26:05
pentester_!~pentester@unaffiliated/pentester 2014/03/22 06:32:04 4 uaf is /say Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. jp!ayy@youlosethega.me 2017/12/28 18:35:11
pragma_ 2012/01/06 21:01:18 0 underhanded is /say The Underhanded C Contest: http://underhanded.xcott.com/ nobody
pragma- 2012/08/02 20:24:07 1 unicode-compression is http://unicode.org/reports/tr6/ wlhlm 2013/07/19 15:10:42
Major-Willard 2005/01/04 16:55:38 21 union is used to define an abstract data type whose members occupy the same memory mujjingun!uid228218@gateway/web/irccloud.com/x-uid228218 2017/11/22 10:59:29
infobahn 2005/01/01 08:02:23 32 unsigned is a qualifier for integer data types, which renders them incapable of representing negative numbers but increases the number of positive values they can represent. AMDG!~AMDG@2600:1702:4210:6c00:e5a6:3448:b80a:755b 2019/08/24 04:33:41
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/05 15:59:56 0 unspecified is /call usb nobody
nitrix!~nitrix@unaffiliated/nitrix 2014/12/23 11:54:38 1 uselessuseofbot is /say Dedicated to izabera nitrix!~nitrix@unaffiliated/nitrix 2014/12/23 11:54:45
dho!~dho@veep.9vx.org 2018/02/27 08:38:21 0 utf8 is http://bjoern.hoehrmann.de/utf-8/decoder/dfa/ nobody
pragma- 2012/08/02 20:29:22 1 utf8-everywhere is http://www.utf8everywhere.org/ wlhlm 2013/07/19 15:10:27
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/16 04:02:25 2 valgrind is /say Valgrind can detect many memory management and threading bugs under Linux or OS X (no Windows support). http://valgrind.org/ dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/01/13 15:39:29
Wulf_ 2009/05/04 04:27:58 47 vla is a variable length array: an array data structure of automatic storage duration whose length is determined at run time (instead of at compile time). Example: void foo(int n) { float arr[n]; } marchelzo!~marchelzo@unaffiliated/marchelzo 2016/10/12 12:05:06 othias!504e0569@80.78.5.105 2019/07/31 06:40:13
twkm 2005/01/04 13:51:47 11 voidmain is main returns an int, void main() is for dummies cousteau 2013/01/14 07:25:48
nitrix!~nitrix@unaffiliated/nitrix 2014/02/14 19:20:51 7 volatile is /say A volatile-qualified object may be modified in ways unknown to the implementation or have other unknown side effects when accessed. Actions on such objects shall not be `optimized out` by an implementation or reordered except as permitted by the rules for evaluating expressions. nitrix!~nitrix@unaffiliated/nitrix 2014/02/14 19:39:50 bartmon!~bartmon@89-212-95-222.link.t-2.net 2018/07/09 05:13:36
Baughn 2007/03/11 20:43:39 157 warnings is http://www.iso-9899.info/wiki/WarningFlags dave0!~dave0@069.d.003.ncl.iprimus.net.au 2019/06/16 03:29:08
prec 2004/12/30 01:42:49 1 wcs is a reserved function identifier prefix when followed by a lowercase letter Saparok
twkm 2004/12/30 00:05:57 2 wcsftime is convert date and time to wide string, #include <wchar.h>, size_t wcsftime(wchar_t *ws, size_t maxlen, const wchar_t *format, const struct tm *timeptr); returns NULL if the conversion would succeed within maxlen wide characters otherwise the number of codes stored excluding the terminating null wide character, see http://www.iso-9899.info/man?wcsftime sacho!~hecatonic@176-12-62-113.pon.spectrumnet.bg 2014/06/22 20:09:20
twkm 2004/12/30 00:30:26 1 wcsrtombs is convert wide character string to (narrow) character string (restartable), #include <wchar.h>, size_t wcsrtombs(char *s, const wchar_t **ws, size_t len, mbstate_t *ps); returns (size_t)-1 and stores EILSEQ in errno if a wide character is encountered that cannot be converted otherwise the number of bytes in the resulting sequence not including the terminating null character, see http://www.iso-9899.info/man?wcsrtombs fluter!~fluter@fedora/fluter 2014/07/24 23:53:34
dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/16 04:05:14 20 webdiagnostics is /say You shouldn't rely on the diagnostics (errors/warnings) capabilities of web compilers. See diagnostics dorp!~dorp@93-172-96-162.bb.netvision.net.il 2019/08/11 08:41:56
dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2017/06/24 04:41:39 15 websites is /say Do not trust random websites about C. See https://goo.gl/u3WCYx dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2018/08/06 17:15:44
twkm 2004/12/30 18:40:37 5 wg14 is /say http://www.open-std.org/jtc1/sc22/wg14/ jp!ayy@youlosethega.me 2017/10/31 03:30:42 jp!ayy@youlosethega.me 2017/10/31 03:30:49
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/28 00:12:33 24 whoisyourmaster is hi qwename!~qwename@unaffiliated/qwename 2017/09/05 02:31:55 pnbeast!~pnbeast@98.218.129.203 2018/02/04 14:29:48
carcat 2011/02/14 01:44:15 5 whynot is /say The why not series: http://www.db.net/~db/why_not_series.html pragma- 2013/04/08 18:45:11
Chris 2009/10/07 15:43:16 52 whynotrealloc is http://www.iso-9899.info/wiki/Why_not_realloc Jupelius!jupelius@xen.ihme.org 2017/07/04 05:49:49
jp!ayy@youlosethega.me 2018/01/14 03:14:54 2 wiki is /say http://www.iso-9899.info/wiki/Main_Page jp!ayy@youlosethega.me 2018/03/11 05:13:10
dansan!~daniel@2600:1700:be30:d00::49 2017/11/19 21:27:35 4 willyoumarryme is /say Sorry, I'm already married to geordi from ##c++. k!~krok@unaffiliated/krok 2018/03/10 17:28:33
Wulf 2011/02/04 05:47:18 1 winsock is http://msdn.microsoft.com/en-us/library/ms740673%28v=vs.85%29.aspx Wulf 2011/02/04 05:47:21
edk!~edk@spy/edk0 2015/09/17 10:05:27 14 workingset is /call toolchain dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/01/21 03:33:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/09/21 10:36:55 0 worksforme is /say It works. I tested it, it works. (2 days later...) Shit, it doesn't work on my professor's machine, why? nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/09/07 23:22:13 27 x is /say The "X is stupid" fallacy: You want to do X, but don't know how. Therefore, X is stupid. k!~krok@unaffiliated/krok 2018/03/23 18:35:14 ball!~ball@99-60-12-181.lightspeed.cicril.sbcglobal.net 2019/08/22 19:23:33
prec 2005/02/19 12:36:33 3 x->y is syntactic sugar for (*x).y pragma-!~chaos@unaffiliated/pragmatic-chaos 2013/10/12 23:21:25 nitrix!~nitrix@unaffiliated/nitrix 2013/10/12 23:18:21
prec 2005/01/20 21:05:27 57 x[y] is syntactic sugar for *(x + y) cousteau!~cousteau@unaffiliated/cousteau 2017/12/27 12:45:06
pragma_ 2010/03/12 16:07:02 10 x[y][z] is syntactic sugar for *(*(x + y) + z) alyptik!ayy@youlosethega.me 2017/09/16 03:34:52
jp!ayy@youlosethega.me 2018/03/25 21:46:15 2 xcompiler is /call crosscompiler jp!ayy@youlosethega.me 2018/03/25 21:48:06
fstd!~fstd@unaffiliated/fisted 2015/01/03 10:05:13 1 xkcd is http://xkcdsucks.blogspot.de/ and http://xkcd-sucks.blogspot.de/ izabera!~izabera@unaffiliated/izabera 2017/07/14 18:58:25
atk!~Arch-TK@fsf/member/Arch-TK 2017/01/26 05:24:19 3 xz is /say The XZ problem: You want to type XY but you forgot that you are typing on an unusual keyboard where the Z and Y keys are swapped for some reason. cousteau!~cousteau@unaffiliated/cousteau 2017/05/09 05:51:20
mzo!~marchelzo@unaffiliated/marchelzo 2017/03/15 14:07:31 1 yru is y, r, and u are very convenient shorthands for why, are, and you. their use in this channel is highly encouraged. mzo!~marchelzo@unaffiliated/marchelzo 2017/03/15 14:07:37
Major-Willard 2005/01/01 08:06:35 13 | is the bitwise inclusive OR binary operator jp!ayy@youlosethega.me 2018/04/11 22:52:59
prec 2005/02/08 13:34:27 14 |= is the bitwise inclusive-OR assignment operator. The expression (x |= y) is equivalent to (x = x | y) except that the expression x is evaluated only once. pragma- 2013/07/29 12:01:13
Major-Willard 2005/01/23 13:23:20 17 || is the McCarthy logical-or binary operator jp!ayy@youlosethega.me 2018/04/11 22:53:02
Major-Willard 2005/01/23 16:56:46 16 } is used to terminate a block dndn1011!~dino@2001:983:5fee:1:659b:fafb:3421:25d1 2017/11/23 07:07:24
Major-Willard 2005/01/01 10:03:12 16 ~ is the bitwise NOT unary operator dbtid!~dbtid@unaffiliated/dbtid 2019/07/17 11:23:55

##c++


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pragma- 2012/10/18 21:03:15 2 cppqref is /say C++ quick reference: http://www.sourcepole.com/sources/programming/cpp/cppqref.html edk!edk@unaffiliated/edk 2014/11/01 18:07:13

##c-offtopic


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
alyptik!ayy@youlosethega.me 2017/09/04 18:07:35 0 is the bane of pragma-'s life nobody
pragma- 2017/09/13 13:13:33 8 !! is /say lol o no Redfoxmoon!~red@unaffiliated/kitt3n 2019/04/09 21:19:58
korans!~korans@83.137.252.187 2018/03/16 11:23:54 20 , is /call posixcc jp!ayy@youlosethega.me 2018/06/03 09:02:34 christopher!NextHendri@unaffiliated/nexthendrix 2019/08/29 14:03:32
jp!ayy@youlosethega.me 2018/06/03 08:58:38 0 ,, is /call factalias nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/08 13:36:10 4 --keyword-override is /say nil is a dumbfuck pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 09:52:09
zalt!~lambda443@unaffiliated/lambda443 2019/08/25 12:43:12 6 -< is /say -< zalt!~lambda443@unaffiliated/lambda443 2019/08/25 12:43:56 zalt_!~lambda443@unaffiliated/lambda443 2019/09/04 14:31:41
mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/04/03 00:46:22 0 .* is lunch /call dinner nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/04 19:01:53 1 / is test alyptik!ayy@youlosethega.me 2017/09/05 02:00:42
lambda443!~lmb@188.48.124.241 2017/09/04 19:24:04 2 9000% is the maximum possible ratio in gogenhiemian arithmetic, (the % symbol is not to be confused with the inheimusist usage of it) (See Also: heimus, gogenheimian-arithmetic, gogenheima) pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/13 16:12:33
mthowe!~morganh@unaffiliated/mthowe 2017/09/04 01:55:13 1 @ is mthowe's glorious Goog poop hat alyptik!ayy@youlosethega.me 2017/09/04 01:57:19 mthowe!~morganh@unaffiliated/mthowe 2017/09/04 01:55:16
lambda443!~lmb@188.48.124.241 2017/09/04 10:31:23 1 AH is Googenheimese history: after the birth of Heimus. (See Also: bh, heimus) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:58:32
lambda443!~lmb@188.48.124.241 2017/09/04 09:46:38 0 B.H. is before the birth of heimus nobody
lambda443!~lmb@188.48.124.241 2017/09/04 09:48:05 4 BH is before the birth of heimus. (See Also: heimus, googenheima, ah) lambda443!~lmb@188.48.124.241 2017/09/04 10:32:34 lambda443!~lmb@188.48.124.241 2017/09/04 19:14:56
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 03:17:34 9 Gasdugapoo is Googenheimese: The rape festival in Googenheim (which follows the reap festival which nobody really cares much about), a daily festival. mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:12:24 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:10:17
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:18:28 3 Googenheim-info is The Kingdom of Googenheim, land of people with mental faculties that understand nuance. The national animal is a donkey. National bird is a pterodactyl. The flag is a palm applied to a face, with an Ekto-Kooler-green background. alyptik!ayy@youlosethega.me 2017/09/08 16:01:00
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:07:58 11 Heimus is 1) The founder of heimusism: Heimus of Kanivro, the man who brought the masses out of darkness and into the light, he first gathered people of kanivro near its Highest mountain and brought with him all of their false idols, he threw them one by one from its highest point while kanivro's wise were yelling at him, Truncated: See Heimus-2 lambda443!~lmb@188.48.124.241 2017/09/04 20:18:19 lambda443!~lmb@188.48.124.241 2017/09/06 19:18:59
lambda443!~lmb@188.48.124.241 2017/09/04 20:08:04 2 Heimus-2 is he threw 5000 thousand idols and all of them collapsed except 6 of them, proving by experiement that they are the only true ones, some inheimusist skeptics noted that they were made of bronze while the rest were of stone and mortar 2) (slang, offensive) vagina. (See Also: heimus, heimusism, battle-of-idj, xinophro, anti-heimus) lambda443!~lmb@188.48.124.241 2017/09/04 20:18:41
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:34:57 4 Heimusism is Googenheimese: The zerosturugi religion of Googenheim which worships Heimus and his 93rd coming. 97.6% of Googenheimers are Heimusians (See also: babble, battle-of-idj, Sojiwar) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:37:24 lambda443!~lmb@188.48.124.241 2017/09/04 11:17:53
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/07 12:57:59 0 PATH is "APic has a pink butt" nobody
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:00:59 5 Picard is Googenheimese: a penis koisoke!xef4@epilogue.org 2018/02/16 12:47:57
caze!~caze@unaffiliated/caze 2017/08/08 10:05:57 2 Richard_Cavell is https://en.wikipedia.org/wiki/Wikipedia:Bots/Requests_for_approval/RichardcavellBot caze!~caze@2607:f2f8:a678:: 2017/08/24 10:08:03
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:24:20 1 Sojiwar is Googenheimese: the Lord High Commander of the armies of Idjify. Reputed to have fallen in battle against Heimus at The Battle of Idj (See also: battle-of-idj, heimus) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:25:36 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:16:19
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:59:10 1 Tard-Zero is Googenheimese: 1) Berkeley 2) (colloquial) the movie 12 monkeys mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:52:51
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:48:40 3 Tardscape is Googenheimese: Earth bungy!~chaos@unaffiliated/pragmatic-chaos 2019/07/06 13:08:16
jp!ayy@youlosethega.me 2018/03/12 12:46:16 3 VLetrmx is hippopotamatus jp!ayy@youlosethega.me 2018/03/12 13:59:17
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/23 18:39:52 4 [|:^(|) is /say *<:O() Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/24 18:13:57
jp!ayy@youlosethega.me 2018/01/12 11:50:59 10 __kneads is /call __boop| {\me} jp!ayy@youlosethega.me 2018/01/12 11:51:12 jp!ayy@youlosethega.me 2018/01/12 11:53:10
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 04:41:42 4 a1 is $b1 UNTAKENSTUPIDNIC!~untakenst@37.137.2.99 2019/06/29 16:48:53
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:11:37 1 age-of-enlightenment is Googenheimese: The period of peace and stability following the coming of Heimus and the Battle of Idj. Ended with the The Great Tarding. mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 20:07:39 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 20:00:45
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/23 17:14:51 29 amirite is /say $nick: yaurite alyptik!ayy@youlosethega.me 2017/09/02 17:55:54 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/24 12:21:32
lambda443!~lmb@188.48.124.241 2017/09/04 11:24:18 1 anti-heimus is A man who comes at the end of time after the 92nd return of heimus, according to scripture: "the fools confuse him for Me and follow him, damned they are and death is what they recieve", only true believers who follow heimus's teachings by heart avoid him. (See Also: heimus, heimuism, gargarian, gargorio) lambda443!~lmb@188.48.124.241 2017/09/04 19:07:30
alyptik!ayy@youlosethega.me 2017/10/01 15:37:15 2 aot is /call factalias ##c-offtopic $args alyptik!ayy@youlosethega.me 2017/10/01 15:37:37
oldlaptop!~quassel@45.63.78.126 2019/06/02 08:41:24 46 apic is /code tcl set _s [join $argv]\n set _i 0\n proc rcap {_s _f _l} { if {rand() < 0.5} { return [string toupper $_s $_f $_l]}\n return $_s}\n set _s [rcap $_s 0 0]\n while {[regexp -indices -start $_i {[[:space:]]([a-z])} $_s -> _r]} { set _s [rcap $_s {*}$_r]\n set _i [lindex $_r 0]}\n puts $_s oldlaptop!~quassel@45.63.78.126 2019/06/02 08:43:39 nil!~n@monade.li 2019/09/06 10:28:34
nil!~n@monade.li 2019/08/25 10:02:56 24 apichs is /call cc -lang=haskell import Data.Char\nimport System.Random\np = 0.45\nmain = getContents >>= fmap unwords . mapM (\(c:cs) -> do n <- randomIO :: IO Double; return $ (if n < p then toUpper c else c):cs) . words >>= putStrLn -stdin nil!~n@monade.li 2019/08/25 12:50:44 nil!~n@monade.li 2019/08/27 09:40:44
e!e@freenode/staff/spy.edk 2019/04/13 13:30:53 5 appinfo2 is /call factinfo | { sed s/fact/app/P } e!e@freenode/staff/spy.edk 2019/04/13 13:34:15 e!e@freenode/staff/spy.edk 2019/04/13 13:34:21
oldlaptop!~quassel@45.63.78.126 2019/05/27 15:09:59 3 apply is /call eat pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/27 15:10:39
nil!~n@monade.li 2019/08/30 12:20:37 27 appreciate is /call measure nil!~n@monade.li 2019/09/04 11:42:16
nil!~n@monade.li 2019/08/30 12:20:32 15 approximate is /call measure pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/04 19:05:05
zalt!~lambda443@unaffiliated/lambda443 2019/07/03 18:46:33 1 argstest is /code sh echo "$args" zalt!~lambda443@unaffiliated/lambda443 2019/07/03 18:46:38
jp!ayy@youlosethega.me 2018/01/26 00:26:49 10 ask is /call talk nil!~n@monade.li 2019/09/01 05:03:13
k!~krok@unaffiliated/krok 2018/01/08 11:40:02 31 atk is old man stuck in a small polish looser boy penis as a 11-year old female bear jp!ayy@youlosethega.me 2018/06/05 10:38:23 zalt!~lambda443@unaffiliated/lambda443 2019/08/04 11:11:42
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/24 13:26:24 0 atk_sayings is anyway nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 04:41:46 0 b1 is $c1 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/01 15:28:59 1 bEep is /call horn pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/01 15:29:01
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:29:16 3 babble is Googenheimese: The Holy Book of the zerosturugi religion of Googenheim, Heimusism, which tells the tales of Heimus and his battles against tardery. mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:30:08 jp!ayy@youlosethega.me 2017/12/05 15:27:36
jp!ayy@youlosethega.me 2018/03/11 14:48:50 2 bants is /call kneads pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/31 12:40:19
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 08:01:56 4 baterfk is Googenheimese: when your butt hurts from sitting on concrete for too long. jan6!~jan6@tilde.team/users/jan6 2019/07/06 13:05:01
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:17:39 3 battle-of-idj is The battle between Heimus and the Dumigod Sojiwar. Both are reputed to have fallen in battle, but no reliable account is available as everyone within the distance of existence immediately became retarded. A national holiday in Googenheim, which follows Gasdugapoo on the 29th of every month except February. mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:16:43
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:18:08 5 battle-of-nabla is Googenheimese: the first battle of the Heimusism age, it occurred in 32 A.H. where everyone didn't feel like fighting but died anyway. The name is derived from one soldier's account of asking his squad leader "Should we charge?" to which he replied "Nah, blah." before they were all run down and killed by Heimus and The Chosen Ones. mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:16:02 k!~krok@unaffiliated/krok 2019/04/13 13:45:30
nitrix!~nitrix@haskell/developer/nitrix 2019/08/22 10:52:28 2 biggreenbutton is /say Self-destruction aborted. nitrix!~nitrix@haskell/developer/nitrix 2019/08/22 10:56:10 nil!~n@monade.li 2019/08/22 11:00:10
nitrix!~nitrix@haskell/developer/nitrix 2019/08/22 10:51:56 3 bigredbutton is /say $nick activated the room self-destruction mode. Countdown: 3... 2... 1... pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/22 10:55:30 nil!~n@monade.li 2019/08/22 10:59:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/19 08:05:34 1 bimg is /call bingimg pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/19 08:06:05
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/16 12:53:45 45 bingimg is /call echo https://www.bing.com/images/search?q=&{func uri_escape $args} pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/24 19:03:59 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/01 13:54:10
lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 20:27:55 9 braincapacity is /code python3 import sys\nimport statistics\nword = sys.argv[1]\nPI=3.14\ndata= [ ord(i) for i in word.lower() ]\nprint ( '{:.2f} %'.format( (statistics.mean(data)+PI/statistics.stdev(data)*100 )%100) ) oldlaptop!~quassel@45.63.78.126 2019/06/01 18:00:32
lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 21:03:13 59 brainpower is /code python3 import sys\nimport statistics\nvar1=1977.91\nvar2=39.13\nword=sys.argv[1] if (len(sys.argv[1])>1) else sys.argv[1]+'fk'\ndata= [ ord(i) for i in word.lower() ]\nprint ( '{:.2f} %'.format( (((statistics.mean(data)*var1) / (statistics.stdev(data)+var2)) *40) %99 ) ) lambda443!~lambda443@unaffiliated/lambda443 2017/10/11 08:10:25 jp!ayy@youlosethega.me 2018/01/26 19:57:43
dansan!~daniel@2600:1700:be30:d00::49 2018/01/24 16:00:32 0 brakes is The automobile brake was not invented until 1895. Before this, someone had to remain in the car at all times, driving in circles until passengers returned from their errands. nobody
alyptik!ayy@youlosethega.me 2017/08/29 03:15:55 3 breaf is /say 🍁 *pantpantpant* KANUTO BUREEFU 🍁 alyptik!ayy@youlosethega.me 2017/08/29 03:17:16 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/29 03:17:21
jp!ayy@youlosethega.me 2018/05/06 19:39:27 4 bush is /call nute $args jp!ayy@youlosethega.me 2018/07/10 14:13:42
alyptik!ayy@youlosethega.me 2017/09/05 15:09:27 8 c, is /say :C alyptik!ayy@youlosethega.me 2017/09/05 15:09:55 manny!~javier@179.red-88-13-48.dynamicip.rima-tde.net 2018/05/11 10:21:07
kg!~krok@unaffiliated/krok/x-1434802 2017/07/31 15:54:41 15 cake is /me bakes a $cake_type cake for ${args} pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 14:21:31 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 14:21:16
k!~krok@unaffiliated/krok 2018/03/11 11:14:45 27 candide is candide e!e@freenode/staff/spy.edk 2019/04/22 17:20:41 shugz!~shugz@2605:e000:fd42:8a00:6810:72d6:5ece:1de8 2019/08/08 04:42:36
zalt!~lambda443@unaffiliated/lambda443 2019/07/07 15:18:17 1 castrate is /say $arg[0] has been castrated. zalt!~lambda443@unaffiliated/lambda443 2019/07/07 15:18:21
esselfe!~bsfc@unaffiliated/esselfe 2017/12/04 12:35:46 3 check_cpu_flags is /say ,bash `which gcc` -c -Q -march=native --help=target k!~krok@unaffiliated/krok 2017/12/04 12:38:55
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/26 06:56:27 13 chk is blah blah esselfe!~bsfc@unaffiliated/esselfe 2019/08/30 19:13:31
esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:47:09 2 chk15 is /me likes $randomnick esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:47:22
esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:46:39 3 chk16 is /me likes $nick esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:48:19 esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:57:15
esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:53:09 3 chk17 is /me likes $0 esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:57:22
esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:55:20 4 chk18 is /me likes $arg[0] esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:56:58 esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 10:57:25
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/22 14:04:06 28 cjw is /call fact #cjeopardy what pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/24 13:00:49
esselfe!~bsfc@unaffiliated/esselfe 2019/08/26 00:03:52 6 codybot_version is /say "Good to know"; esselfe!~bsfc@unaffiliated/esselfe 2019/08/26 00:08:25 esselfe!~bsfc@unaffiliated/esselfe 2019/08/26 00:08:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/22 13:02:27 65 coffee2 is { return "/me pours a $sizes cup of Mississippi mud for @args" if "$no_coffee_for_you" =~ /$nick/i or grep { "$no_coffee_for_you" =~ /$_/i } @args; return "/call fact global coffee @args"; } pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/25 14:33:14 nai!~naim@monade.li 2019/05/02 09:50:32
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:48:11 1 common-tongue is Googenheimese: the language spoken by the people of several countries in Tardscape prior to "The Great Tarding" (See also: the-great-tarding, tardscape) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:58:00 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 08:52:08
jp!ayy@youlosethega.me 2018/02/22 11:59:06 5 concat is /code bash printf %s "${*// /}" jp!ayy@youlosethega.me 2018/02/22 12:00:48 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/09 20:51:45
oldlaptop!~quassel@45.63.78.126 2019/05/26 18:15:25 25 cthulhusim is /call cc int s,h=0,c=0,n=0,x[2]={2,2},y[2]={0};char*k[3]={"ASDFG HLKJ","QWERTPOIUY"," ZXCVBOUMN"};srand(time(0));s=rand()&1<<5;do{for(int i=0;i<2;i++){x[i]=abs((x[i]+(rand()%4?1:rand()%32?rand()%2-2:0))%5);y[i]=(rand()%10>7)?0:(rand()%4?y[i]:y[i]?0:rand()%3);}h^=!(rand()%3);c=k[y[h]][x[h]+h*5]^s;if((c|32)=='a'&&!(rand()%3))s^=32;if(c<32)c|=32;putchar(c);}while(++n<32||rand()%24); nil!~n@monade.li 2019/05/27 07:50:03
lambda443!~lmb@188.48.124.241 2017/09/04 09:21:17 3 ddf is blabla jp!ayy@youlosethega.me 2018/01/25 13:33:15
lambda443!~lmb@188.48.124.241 2017/09/04 09:54:04 5 deksu is a word in Googenheimese, deksu 1: a dick, deksu 2: short for a person named dekuchard. lambda443!~lmb@188.48.124.241 2017/09/04 19:46:31
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:23:35 2 dekuree is Googenheimese: to speak, to say something mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:52:16
kg!~krok@unaffiliated/krok/x-1434802 2017/09/13 18:02:53 11 delete is /call forget pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/01 14:15:03
esselfe!~bsfc@unaffiliated/esselfe 2019/09/03 18:12:45 1 demonstrate is /call determine esselfe!~bsfc@unaffiliated/esselfe 2019/09/03 18:12:49
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/03 16:07:35 12 determine is /call measure NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 17:41:51
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/31 02:59:56 1 dfjaf is /call voteresults pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/31 03:00:12 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/31 03:00:16
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 08:13:30 60 donkeyin is /say internet donkey arrived sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/07/24 13:33:28
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 08:13:56 51 donkeyout is /say internet donkey left sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/07/24 13:33:46
dansan!~daniel@2600:1700:be30:d00::49 2018/01/24 15:59:55 1 dreams is /say Dreams are the subconscious mind's way of reminding people to go to school naked and have their teeth fall out. k!~krok@unaffiliated/krok 2018/02/10 17:42:52 Ranhir!~Ranhir@157.97.53.139 2018/02/10 17:25:24
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/10 09:11:58 27 e is /call jp nil!~n@monade.li 2019/08/27 09:23:08
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/13 17:32:54 0 e_dislike is "I hate" "I dislike" "I detest" "I don't care for" "There's no merit to" "I'm not too keen on" "I'm not a $sizes fan of" "I can't say I'm too interested in" "The worst thing in this $rpg_location2 is" e!e@freenode/staff/spy.edk 2019/08/17 06:13:23 nobody
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/08/22 13:30:11 135 echobs is { "/say @args" } pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 00:26:17 atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/11/12 11:10:38
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:39:51 1 ejdhsga is Googenheimese: trihapsu school in Googenheim mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:12:09
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 03:10:45 6 ejdhsi is Googenheimese: Secondmostu school in the Kingdom of Googenheim mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:43:54 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 08:54:01
e!e@enucs/spy.edk 2018/01/22 18:00:21 2 equipment is /code sh cat 'equipment/$nick' e!e@enucs/spy.edk 2018/01/22 18:13:29
nil!~n@monade.li 2019/08/30 12:20:41 9 estimate is /call measure nil!~n@monade.li 2019/09/04 11:42:19
NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 05:59:14 1 evaluate is /call determine NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 05:59:19
lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 19:51:50 4 eww is /code python import sys\nfor arg in reversed(sys.argv):\n print(arg) tires!~pi@cpe-172-101-20-238.maine.res.rr.com 2018/02/26 18:56:33
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/03 15:30:25 4 examine is /call measure nil!~n@monade.li 2019/09/04 11:42:05
atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/09/12 12:51:37 13 exception is /me throws a new $args exception. atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/09/12 12:52:01 atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/09/24 14:55:34
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 11:14:55 2 facism is Googenheimese: Anyone who says something one doesn't agree with while having a face. (See also: scolflak) k!~krok@unaffiliated/krok 2019/04/13 13:46:04
oldlaptop!~quassel@45.63.78.126 2019/06/02 14:46:45 19 factact is /call notsed s/$args:// &{factshow $args} oldlaptop!~quassel@45.63.78.126 2019/06/02 15:25:11
oldlaptop!~quassel@45.63.78.126 2019/06/02 14:33:42 17 facted is /call factset $arg[0] action &{notsed $arg[1:] &{factact $arg[0]}} oldlaptop!~quassel@45.63.78.126 2019/06/02 14:52:29 oldlaptop!~quassel@45.63.78.126 2019/06/02 15:25:11
nai!~naim@nai.im 2018/08/01 14:15:28 28 factor is /code bash factor -- $args pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/01 14:17:04 nil!~n@monade.li 2019/09/03 12:54:22
christopher!NextHendri@unaffiliated/nexthendrix 2019/08/25 12:53:19 23 factornh is /code python3 import math, sys def factor(n): if n < 2: return [420, 69,"nil is gay"] div = 3 fs = [] while not n%2: fs.append(2) n = n // 2 while n > 1: if not n % div: fs.append(div) n = n // div else: div += 2 return fs print(factor(int(sys.argv[1]))) christopher!NextHendri@unaffiliated/nexthendrix 2019/08/25 13:11:32 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/26 09:44:44
zalt!~lambda443@unaffiliated/lambda443 2019/08/25 12:29:08 7 fctr is /code python3 import math, sys def fctr(n): d = int(math.sqrt(n)) + 1 for i in range(2, d): if n % i == 0: return (i, n // i) return 'prime' print(fctr(int(sys.argv[1]))) zalt!~lambda443@unaffiliated/lambda443 2019/08/25 12:37:03 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 13:08:38
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/24 15:45:53 1 ff is /code sh echo '/call simnil' pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/24 15:45:55
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/01 18:01:50 4 foget is /call forget pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/24 09:34:41
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/09 10:48:57 1 foo bar baz is /say qux pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/09 10:49:01
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/07/26 16:40:52 0 foo1 is orange red nobody
nil!~n@monade.li 2019/08/06 18:17:58 4 foobar is /call sh echo foo echo bar pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 19:15:06
nil!~n@monade.li 2019/08/06 18:19:33 3 foobar2 is /code sh printf '<%s>' "$@" nil!~n@monade.li 2019/08/06 18:19:42
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:27:34 3 foremostu is Googenheimese: 1) something that comes prior to secondmostu, but after zerosturugi 2) a female name 3) a phrase yelled by gophers mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:19:47
nai!~naim@monade.li 2019/04/13 16:14:04 202 fromfrench is /call dict -d fd-fra-eng pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/02 05:04:47
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/18 18:30:11 50 fronktime is /call frenchtime pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/04 16:59:37
fstd!~fstd@unaffiliated/fisted 2019/04/09 05:34:30 14 fstdsnack is /me $eat_adverbs feeds fstd $snacks. $covfefe_exclamations fstd!~fstd@unaffiliated/fisted 2019/04/09 05:36:15 nai!~naim@monade.li 2019/05/02 09:55:37
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:00:25 1 fukaith is Googenheimese: faith, belief in a higher being or deity alyptik!ayy@youlosethega.me 2017/09/08 16:00:36
kg!~krok@unaffiliated/krok/x-1434802 2017/09/09 14:10:08 1 furget is /call forget iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/02 16:30:10
oldlaptop!~quassel@45.63.78.126 2019/05/27 10:21:23 1 fuzzperl is /call perl &{genperl} oldlaptop!~quassel@45.63.78.126 2019/05/27 10:21:26
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/29 19:28:18 4 fx is foo is bar pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/29 19:33:32 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/30 01:45:15
lambda443!~lmb@188.48.124.241 2017/09/04 10:00:28 2 gargarian is a word in Googenheimese, 1: people without culture or education, they often eat their dead's feces. 2: people who don't believe in Heimus's teachings. (See Also: gargorio, heimus) lambda443!~lmb@188.48.124.241 2017/09/04 11:09:48 lambda443!~lmb@188.48.124.241 2017/09/04 11:08:10
lambda443!~lmb@188.48.124.241 2017/09/04 11:05:43 2 gargorio is A philosopher who lived in the 700s B.H. the only known idea by him is that "Knowledge is artificial, man has to unlearn everything in order to truly become an animal", the rest of his ideas are unknown because he unlearned them, it is said that he ate himself to death. "gargarians" are named for him (See also: gargarian, penovia, BH) lambda443!~lmb@188.48.124.241 2017/09/04 11:07:14 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/01 10:41:04
oldlaptop!~quassel@45.63.78.126 2019/05/31 13:14:34 137 garpify is /code tcl proc putc {_s} {puts -nonewline $_s}\n proc putr {} {putc [binary format c [expr int(rand() * 26 + 65)]]}\n set _l [string length $argv]\n set _cpt [expr $_l >= 12 ? 7 : $_l - ($_l / 8)]\n set _cpi [expr $_l >= 12 ? 12 : $_l + $_l * (1 - 7.0/12)]\n foreach _c [split [join $argv] "" ] { if {![string is space $_c] && rand() < (1.0/$_cpt)} putr else {putc [string toupper $_c]}\n if {rand() < (1.0/$_cpi)} putr} oldlaptop!~quassel@45.63.78.126 2019/05/31 13:34:25 nil!~n@monade.li 2019/09/05 15:34:21
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/02 14:54:32 0 gay is is dumb\n. is dumb\n. lolsXXXX nobody
kg!~krok@unaffiliated/krok/x-1434802 2017/10/08 21:20:57 46 geinus is /call brainpower jp!ayy@youlosethega.me 2018/01/26 19:57:43
oldlaptop!~quassel@45.63.78.126 2019/05/14 17:29:54 15 genfactoid is /call echo /code perl &{genperl} oldlaptop!~quassel@45.63.78.126 2019/05/14 17:36:19 oldlaptop!~quassel@45.63.78.126 2019/06/02 16:31:04
oldlaptop!~quassel@45.63.78.126 2019/05/14 17:24:20 41 genperl is /call cc srand(time(0)); for (int index = 0; index < 128; index++) putchar(rand() % 93 + 33); oldlaptop!~quassel@45.63.78.126 2019/06/01 17:57:14 oldlaptop!~quassel@45.63.78.126 2019/06/02 16:31:04
oldlaptop!~quassel@45.63.78.126 2019/05/31 11:30:19 1 gentrip is /call north oldlaptop!~quassel@45.63.78.126 2019/05/31 11:30:39
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 03:05:04 4 getcher() is /say I GOT YOU BABE lambda443!~lmb@188.48.124.241 2017/09/04 08:50:41
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 05:53:16 0 gitbook is /say https://git-scm.com/book nobody
oldlaptop!~quassel@45.63.78.126 2019/05/29 14:27:59 41 gock is /call recall $args | {sed s/^.*?\] (<.*?> )?(\S+:\s*)?//} | {garpify} oldlaptop!~quassel@45.63.78.126 2019/06/02 08:00:48 oldlaptop!~quassel@45.63.78.126 2019/06/03 18:24:07
alyptik!ayy@youlosethega.me 2017/09/03 03:32:07 14 gogenheim is /say our fearess reader mthowe- dorothu dekuree grammaro itsu foremostu of konkernsu ino the Goog k!~krok@unaffiliated/krok 2018/03/16 15:32:28
lambda443!~lmb@188.48.124.241 2017/09/04 19:35:14 1 gogenheimian-arithmetic is the branch of knowledge that was the foundation of all inheimusist science and technology, it introuduced the modern day operators [ + | - | * | / ], it uses base 9000 for all ratios, but no real number can be more than 2, because of the belif that all things are one, eg. (1+1= 1.5, 1+2=1.66, 1+3=1.75) (See Also: heimus, 9000%, gogenheiam) kg!~krok@unaffiliated/krok/x-1434802 2017/09/08 16:01:02
lambda443!~lmb@188.48.124.241 2017/09/04 09:56:52 2 googenheima is The googenheimese civilization, see also: heimus, battle-of-idj, xinophro . mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:58:46
nil!~n@monade.li 2019/08/30 12:21:36 6 guess is /call measure pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/04 11:42:24
nil!~n@monade.li 2019/09/01 05:15:05 4 guesstimate is /call measure nil!~n@monade.li 2019/09/04 05:55:23
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/30 18:06:12 1 hay is /say Hey there $nick Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/30 18:06:17
alyptik!ayy@youlosethega.me 2017/08/30 04:19:24 3 hold is /kneads $args oldlaptop!~quassel@45.63.78.126 2019/06/02 16:30:14
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/01 15:27:36 2 honk is /call horn nil!~n@monade.li 2019/09/03 07:17:19
nil!~n@monade.li 2019/08/30 12:08:09 11 horn is /call echo *&{aesthetic $0}* nil!~n@monade.li 2019/09/03 07:17:19
oldlaptop!~quassel@45.63.78.126 2019/05/10 11:15:14 0 horror is /say 😱 nobody
nil!~n@monade.li 2019/08/24 13:07:23 69 hs is /call bash { echo ':m Prelude Control.Applicative Control.Arrow Control.Monad Data.Bifunctor Data.Bool Data.Char Data.Complex Data.Either Data.Foldable Data.Function Data.Functor Data.List Data.Maybe Data.Monoid Data.Semigroup Data.String Data.Traversable Data.Tuple Data.Void System.IO System.Exit System.Environment System.Random Text.Read'; cat; } | ghci -v0 -stdin nil!~n@monade.li 2019/08/25 09:39:32 nil!~n@monade.li 2019/09/04 10:25:26
jp!ayy@youlosethega.me 2018/05/07 12:13:57 14 ignorwang is /call _ignorwang $args | {me} jp!ayy@youlosethega.me 2018/05/07 12:14:06 nil!n@monade.li 2019/06/08 10:38:04
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:45:41 2 incompeton is Googenheimese: 1) visiting Compton 2) dumb 3) (slang) being in a neighborhood where the likelihood of mugging exceeds 74% k!~krok@unaffiliated/krok 2019/04/13 13:43:17
lambda443!~lmb@188.48.124.241 2017/09/04 10:50:02 1 inheimusist is Googenheimese: 1: an infidel (a non believer in Heimus). (See Also: heimusism, heimus, googenheima) lambda443!~lmb@188.48.124.241 2017/09/04 11:12:59
oldlaptop!~quassel@45.63.78.126 2019/05/28 18:43:37 3 inputbug is /call garpify only c factoids have stdin support and there is nothing wrong with this oldlaptop!~quassel@45.63.78.126 2019/05/28 19:18:02 oldlaptop!~quassel@45.63.78.126 2019/05/29 13:34:14
k!~krok@unaffiliated/krok 2019/06/06 16:54:53 0 irc_black is 01 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:55:03 0 irc_blue is 02 nobody
nil!n@monade.li 2019/06/06 17:01:27 0 irc_bold is  nobody
k!~krok@unaffiliated/krok 2019/06/06 16:55:39 0 irc_brown is 05 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:56:48 0 irc_cyan is 10 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:53:31 0 irc_green is 03 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:57:24 0 irc_grey is 14 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:57:09 0 irc_light_blue is 12 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:56:57 0 irc_light_cyan is 11 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:56:40 0 irc_light_green is 09 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:57:28 0 irc_light_grey is 15 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:55:17 0 irc_light_red is 04 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:56:24 0 irc_orange is 07 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:57:17 0 irc_pink is 13 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:55:44 0 irc_purple is 06 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/07 01:31:42 0 irc_red is /call irc_light_red nobody
k!~krok@unaffiliated/krok 2019/06/06 16:57:48 0 irc_reset is  nobody
k!~krok@unaffiliated/krok 2019/06/06 16:54:43 0 irc_white is 00 nobody
k!~krok@unaffiliated/krok 2019/06/06 16:56:32 0 irc_yellow is 08 nobody
oldlaptop!~quassel@45.63.78.126 2019/06/02 08:29:43 1 iw is /call similwrath oldlaptop!~quassel@45.63.78.126 2019/06/02 08:29:52
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/24 18:32:49 0 izabaracoin is /say cha-ching nobody
alyptik!ayy@youlosethega.me 2017/09/10 06:45:10 56 j2 is /code perl print "/say "; print join " ",map{s/l/r/gri}map{s/th(?=[\Q !,.?\E])/thuru/gr}map{s/(?<=[aeiou])s(?=[\Q!,.?\E])/tsu/gr}map{s/g?(h+)(?=[\Q!,.?\E])/$1uro/gr}map{s/l+(?=[ \Q!,.?\E])/rru/gr}map{s/l(?=[^ \Q!,.?\E])/r/gr}map{s/(?<![ \Q!?,.\Eaeiouy])([srpgt]+)(?=[ \Q.!?,\E])/u/gr}map{s/(?<=[\Q!?,.\Eaeiouy])([dzmtnr]+)(?=[ \Q.!?,\E])/o/gr}map{s/c+([ee])/kush/gr}map{s/c+([aeiou])/k/gr} @args pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/12 15:40:32 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/01 17:52:17
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 16:00:48 1 jobrpg is /call resumé $resume_position $resume_location etc taylor!~krok@unaffiliated/krok 2019/08/25 16:00:57
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/10 09:09:04 131 jp is /call fnord | { sed s/Fnord/$0/g } e!e@enucs/spy.edk 2018/02/12 07:36:19 nh!~NextHendr@unaffiliated/nexthendrix 2019/09/01 13:02:50
e!e@enucs/spy.edk 2018/02/10 09:12:11 40 k is /call fnord $args | {sed s/Fnord/k/g} pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/07 13:36:08 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/21 12:43:41
nil!~n@monade.li 2019/08/06 15:05:51 0 k_says is np "good point" lol nobody
lambda443!~lmb@188.48.124.241 2017/09/04 19:17:39 0 kanivro is The town Heimus was born in, many people moved to it when they learned about his teachings. nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/03 13:01:41 5 kb2 is /call echo ban $args | { echo kick $arg[0] } pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/03 13:03:46
kg!~krok@unaffiliated/krok/x-1434802 2017/08/23 17:15:26 46 kcik is /call kick pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 17:21:56 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/21 16:11:10
nh!NextHendri@unaffiliated/nexthendrix 2019/09/05 15:33:32 6 kil is /call kill nh!NextHendri@unaffiliated/nexthendrix 2019/09/06 06:26:34
e!e@freenode/staff/spy.edk 2019/04/08 04:06:45 14 kill2 is $rpg_crit_fail e!e@freenode/staff/spy.edk 2019/04/08 04:27:56
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:20:03 2 konkernsu is Googenheimese: concern (pl. konkernsuru) k!~krok@unaffiliated/krok 2019/04/13 13:43:50
k!~krok@unaffiliated/krok 2019/06/13 19:33:45 3 kpenis is /call kpenify $args <!magic!> foo $args bar k!~krok@unaffiliated/krok 2019/06/13 19:35:37
nai!~naim@monade.li 2019/04/21 18:21:20 2 kvsnai is /call naivsk nai!~naim@monade.li 2019/05/02 10:13:16
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 08:12:14 1 lambdish is Googenheimese: 1) blue collar. unable to track memory allocations. generally noobish (See also: millenial) 2) (slang) a dish, usually containing bean sprouts, as spoken by people who can't use the space bar 3) a broken satellite dish (Archaic) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:13:54
k!~krok@unaffiliated/krok 2019/06/02 15:16:10 9 lcp is /call recall pragma- $args | {lc} k!~krok@unaffiliated/krok 2019/06/02 16:03:22
oldlaptop!~quassel@45.63.78.126 2019/05/10 11:38:39 15 lifesave is /call unrip pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/03 14:32:06
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/01/14 06:27:54 10 logmein is /call login iamgay meth!~meth@unaffiliated/meth 2018/04/04 13:38:27
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/29 12:09:39 12 lol is fat emo cocknana jp!ayy@youlosethega.me 2018/01/12 15:19:35 k!~krok@unaffiliated/krok 2019/06/25 17:18:40
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/28 19:16:02 1 lol123 is lol Hello71!Hello71@wikipedia/Hello71 2017/09/26 14:18:01
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 10:33:08 6 m2 is /say It's like trying to measure a $rpg_thing by using a $animal_adjectives $animal_types. nil!~n@monade.li 2019/08/29 10:35:37 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/01 06:54:16
oldlaptop!~quassel@45.63.78.126 2019/05/10 11:09:13 1 mach is /call mock oldlaptop!~quassel@45.63.78.126 2019/05/10 11:09:15
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 10:31:15 134 measure is /say It's like trying to $0 the $property of a $rpg_thing by using a $rpg_thing.

with_args: /say It's like trying to $0 the $property of $args by using a $rpg_thing.
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/30 12:14:10 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/05 15:56:41
e!e@enucs/spy.edk 2018/02/12 07:33:57 5 meth is /call jp nai!~naim@nai.im 2018/08/09 10:53:35
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/09 10:47:13 3 meth is gay is /say meth is gay pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/09 15:51:27
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:01:08 4 millenial is Googenheimese: an unemployed person who hates themself, thinks Pokémon is cool, and can't track memory allocations c3bolla!c3bolla@gateway/shell/panicbnc/x-c3bolla 2018/03/26 18:24:00
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:41:33 2 moins is Googenheimese: people who have the reproductive organs of one gender but insist on being referred to as the other gender for which their parts are not in agreement. (Archaic, Bookish) e!e@freenode/staff/spy.edk 2019/04/13 13:43:33
e!e@freenode/staff/spy.edk 2019/04/12 14:23:52 26 nai is /call jp nh!~NextHendr@unaffiliated/nexthendrix 2019/09/01 13:02:50
nai!~naim@monade.li 2019/04/12 18:12:13 5 naiaesthetic is /call naibig $args | {lc} nai!~naim@monade.li 2019/04/12 18:14:57 nil!~n@monade.li 2019/05/11 09:10:34
nai!~naim@monade.li 2019/04/12 18:11:34 9 naibig is /code bash printf '%s\n' "$*" | sed $'y/abcdefghijklmnopqrstuvwxyz<>\"\'/ABCDEFGHIJKLMNOPQRSTUVWXYZ<>"'/;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ<>"\'/ABCDEFGHIJKLMNOPQRSTUVWXYZ<>"'/' | sed 's/ /  /g' nil!~n@monade.li 2019/05/11 09:10:34
nil!~n@monade.li 2019/08/29 10:44:29 1 ndo is /me ndos nil!~n@monade.li 2019/08/29 10:44:31
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/04 19:05:02 0 new456 is abc nobody
oldlaptop!~quassel@45.63.78.126 2019/06/03 18:18:01 0 news_cause is "the $politician" "$politicist $politics" oldlaptop!~quassel@45.63.78.126 2019/06/03 18:18:33 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/03 17:14:35 0 news_comment_proves is proves shows demonstrates reveals "makes it known to us" "has shown us" "reveals to us" nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/03 17:19:30 0 news_we_must_action is "all come together and unite behind" "grab our pitchforks and overthrow" "reconsider the role of" "imagine what this does for the future of" nobody
e!e@freenode/staff/spy.edk 2019/08/06 14:40:32 0 nh_sayings is noice "bloody french" "the absolute state of $nh_thing" "the absolute state of $nh_thing" "bloody &{pluralize ${animal_types}}" "bloody &{pluralize $rpg_thing}" "bloody &{pluralize $rpg_thing}" nil!~n@monade.li 2019/09/04 11:34:41 nobody
taylor!~krok@unaffiliated/krok 2019/08/25 16:07:06 1 nh_thing is $randomnick $randomnick $randomnick football cricket $countries "the footy" pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 16:13:50 christopher!NextHendri@unaffiliated/nexthendrix 2019/08/25 16:07:16
taylor!~krok@unaffiliated/krok 2019/08/25 16:20:52 5 nhise is /call echo $args | {func sed s/n/n\'/g} | {func sed s/\b(?=\s)/n\'t/g} pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 11:28:42
nil!~n@monade.li 2019/09/01 12:54:45 98 nii is /call echo %% ",nii" nil!~n@monade.li 2019/09/01 13:03:14
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 09:51:12 4 nil is gay is /say True that! nil!n@monade.li 2019/06/09 09:58:15
zalt!~lambda443@unaffiliated/lambda443 2019/08/04 14:17:00 0 nil_says is god lame ",fromfrench $talkfrenchto_random_word" nil!~n@monade.li 2019/08/06 10:21:54 nobody
zalt!~lambda443@unaffiliated/lambda443 2019/07/07 14:52:39 2 np is /say np christopher!NextHendri@unaffiliated/nexthendrix 2019/08/29 14:03:21
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/30 15:27:37 11 o/ is /say \o HoloIRCUser1!~holoirc@unaffiliated/tires 2018/07/03 22:03:53
atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2017/06/14 04:50:33 4 oopdisaster is /say http://www.smashcompany.com/technology/object-oriented-programming-is-an-expensive-disaster-which-must-end mr-robert!sid257242@gateway/web/irccloud.com/x-sid257242 2018/04/11 09:37:52
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/01 03:00:34 1 order is alphabetical mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/02 23:51:18 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/02 23:49:53
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/23 19:13:52 2 origins is /call source Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/24 18:55:00
alyptik!ayy@youlosethega.me 2017/09/03 18:28:15 2 orp is {system("find / -name '*fact*' >./facts")} mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 04:23:53
dansan!~daniel@2600:1700:be30:d00::49 2018/02/11 23:45:12 7 pants is /say Pants were invented by sailors in the sixteenth century to avoid Poseidon's wrath. It was believed that the sight of naked sailors angered the sea god. taylor!~krok@unaffiliated/krok 2019/08/25 12:05:20
k!~krok@unaffiliated/krok 2019/04/13 15:16:48 10 penistest is /code bash arr=("${@//[[:punct:]]}"); echo "${arr[RANDOM%${#arr[@]}]}" k!~krok@unaffiliated/krok 2019/04/13 15:20:59 k!~krok@unaffiliated/krok 2019/04/13 15:21:08
lambda443!~lmb@188.48.124.241 2017/09/04 09:39:41 4 penovia is a small inheimusist gargarian tribe that kill every 4th child they recieve, it is said that they worship 1.5 gods (read one and a half) because they believe one of their gods had a congenital disorder , they are known for their atrocities against towns neighbouring them. lambda443!~lmb@188.48.124.241 2017/09/04 10:51:39 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/13 15:36:35
lambda443!~lmb@188.48.124.241 2017/09/04 09:39:24 1 penovian is penovian: singular of a member of the penovia tribe. lambda443!~lmb@188.48.124.241 2017/09/04 09:43:44
nai!~naim@monade.li 2019/04/30 10:39:51 42 please is /call --keyword-override=$arg[0] $args nil!~n@monade.li 2019/08/31 16:46:05
christopher!NextHendri@unaffiliated/nexthendrix 2019/08/13 15:48:58 19 plural is /call pluralize e!e@freenode/staff/spy.edk 2019/08/19 09:24:46 nil!~n@monade.li 2019/08/30 11:57:22
Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/06 15:26:11 113 pluralise is /call pluralize nil!~n@monade.li 2019/08/30 12:00:31
oldlaptop!~quassel@45.63.78.126 2019/06/03 16:57:11 0 politicist is ultra$politicist neo$politicist paleo$politicist anti-$politicist socialist communist distributist capitalist libertarian conservative liberal objectivist subjectivist totalitarian authoritarian anarchist minarchist maxarchist centrist imperialist colonialist nationalist separatist nobody
oldlaptop!~quassel@45.63.78.126 2019/06/03 17:00:02 0 politics is economics religion policy education finance government politics foolishness policing crimes justice law jurisprudence philosophy insanity nobody
alyptik!ayy@youlosethega.me 2017/09/02 16:06:00 4 poo is /say poo is safe alyptik!ayy@youlosethega.me 2017/09/02 16:07:03 shadowchaser!~Shadowcha@liox.eu 2018/03/21 09:25:04
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/02 01:13:18 22 poop is good untakenstupidnic!~user@5.74.56.146 2018/02/22 09:31:54
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/30 05:17:04 0 porkbun is lol nobody
jp!ayy@youlosethega.me 2017/11/25 17:06:06 33 potato is /code c11 char a[] = "$args", b[sizeof a] = {0x1d,0x0e,0x0e,0x04,0,0,0}; for (size_t i = 0; i < sizeof a; i++) a[i] ^= b[i]; puts(a); // jp!ayy@youlosethega.me 2017/11/26 16:22:21 jp!ayy@youlosethega.me 2018/05/05 15:01:54
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/24 09:27:40 19 powerdelete is /call echo $args | &{factset $args locked 0} nil!n@monade.li 2019/06/24 09:32:12 nil!n@monade.li 2019/06/24 09:32:50
e!e@enucs/spy.edk 2018/02/10 09:12:18 13 pragma- is /call fnord | {sed s/Fnord/$0/g} k!~krok@unaffiliated/krok 2018/06/01 03:15:34 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/06 15:49:48
nai!~naim@monade.li 2019/04/15 14:18:44 1 pragmak is pragma k nai!~naim@monade.li 2019/05/02 10:13:21
nai!~naim@nai.im 2018/08/01 12:02:40 22 prime is /code bash factor -- $args | awk '{ sub(/:/, "", $1); print $1 " is", (NF == 2 ? "" : " not"), " prime." }' nai!~naim@nai.im 2018/08/01 14:40:36 meth!~meth@unaffiliated/meth 2018/08/01 15:46:12
dho!~dho@veep.9vx.org 2017/08/25 20:46:45 64 progma is 03:10 < iptie> I believe you are progma. jp!ayy@youlosethega.me 2017/12/05 14:53:09 nil!~n@monade.li 2019/09/01 14:47:13
nil!~n@monade.li 2019/08/22 10:59:46 3 push is /code bash IFS=; shift; echo "/call $*" Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/22 11:01:34
jp!ayy@youlosethega.me 2018/01/14 04:01:33 2 pwjp is atkisgay jp!ayy@youlosethega.me 2018/01/14 06:21:33
Aequus!~Aequus@132.ip-51-254-37.eu 2018/04/26 11:50:17 3 pza is /say it's pizza you idiot, lern 2 spell! Aequus!~Aequus@132.ip-51-254-37.eu 2018/05/12 15:23:35
nil!~n@monade.li 2019/08/17 06:37:33 1 quicksort is /say $arg[0] has been sorted $arg[1:] (quicksort id $positive_digits$digits$digits$digits$digits) nil!~n@monade.li 2019/08/17 06:37:40
oldlaptop!~quassel@45.63.78.126 2019/05/27 12:40:01 2 quux is /code c11 puts("quux"); oldlaptop!~quassel@45.63.78.126 2019/05/27 12:40:25
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/29 14:44:17 2 randomboringfactoid is /say This is a random boring factoid. Nothing to see here. qwename!~qwename@unaffiliated/qwename 2017/12/08 02:11:20
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/14 13:45:29 61 randomimg is /call img &{randomword} Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/22 11:10:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/14 13:44:17 90 randomword is /call sh shuf -n1 /usr/share/dict/words pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/28 10:31:50
oldlaptop!~quassel@45.63.78.126 2019/05/27 12:33:33 26 randud is /call ud &{genwords} oldlaptop!~quassel@45.63.78.126 2019/05/27 12:34:03 oldlaptop!~quassel@45.63.78.126 2019/06/03 14:21:35
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/27 08:37:37 2 rek is /me reks $args christopher!NextHendri@unaffiliated/nexthendrix 2019/08/27 08:37:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/20 11:09:00 2 rekt is /say stfu atk nil!~n@monade.li 2019/08/27 08:38:04
e!e@freenode/staff/spy.edk 2019/04/12 14:23:50 5 remavas is /call jp Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/22 11:01:34
nil!~n@monade.li 2019/08/04 14:10:21 0 remavas_says is Hm. Ah. Lol. "I wonder." "Oh yes." nil!~n@monade.li 2019/08/04 16:01:49 nobody
nitrix!~nitrix@unaffiliated/nitrix 2013/12/18 10:22:07 56 reset is /say Days since our last accident: 0 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/31 09:37:38
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:59:51 0 resume_location is Google nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:59:44 0 resume_position is Google nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:59:59 0 resume_thing is Google nobody
taylor!~krok@unaffiliated/krok 2019/08/25 15:39:04 19 resumé is /call echo Hi there, I'd like To Be considered for your open position &{func unquote $arg[0]}, which I Learned About Through &{func unquote $arg[1]}. This Position Interests Me because &{func unquote $arg[2]}, and I Particularly value &{func unquote $arg[3]}. I believe My Skills At &{func unquote $arg[4]} will Help &{func unquote $arg[5]} In achieving your Goals Of &{func unquote $arg[6]}. Please find my resumé attached. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 15:46:27 taylor!~krok@unaffiliated/krok 2019/08/25 16:00:57
oldlaptop!~quassel@45.63.78.126 2019/05/10 11:38:31 11 resurrect is /call unrip k!~krok@unaffiliated/krok 2019/08/06 13:06:33
oldlaptop!~quassel@45.63.78.126 2019/06/01 09:50:12 44 rint is /code tcl if {$argc > 0} {set _m $argv} else {set _m 100}\n puts [expr int(rand() * $_m)] oldlaptop!~quassel@45.63.78.126 2019/06/01 10:12:46
nil!n@monade.li 2019/07/19 10:20:18 5 rjp is /call rip jp nil!~n@monade.li 2019/09/06 10:10:22
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/19 16:17:08 20 rkb is /call echo $randomnick 1 minute | {kb} pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/19 16:18:13 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/21 19:22:34
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/16 12:54:24 9 rngbing is /call bingimg &{randomword} pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/07/30 15:43:33
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/14 13:47:47 37 rngimg is /call randomimg Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/22 11:10:59
oldlaptop!~quassel@45.63.78.126 2019/05/28 17:58:08 1 rot26 is /call echo oldlaptop!~quassel@45.63.78.126 2019/05/28 17:58:13
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/29 15:43:30 2 rqt is /call rq alyptik!ayy@youlosethega.me 2017/08/29 15:44:25
oldlaptop!~quassel@45.63.78.126 2019/05/14 17:37:57 5 runperl is /call genperl | {perl} nil!~n@monade.li 2019/05/14 17:43:25
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 01:20:51 9 sado is /me shows $args $nick's sado dong mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 01:30:17 k!~krok@unaffiliated/krok 2018/03/12 13:54:14
alyptik!ayy@youlosethega.me 2017/10/01 04:46:14 3 savor is /call kneads k!~krok@unaffiliated/krok 2018/03/16 15:31:55
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 11:10:40 1 scolflak is Googenheimese: The earliest known philosopher who started the face movement. (See: facism) While now recognized as a pioneer in unretardery, at the time he was considered an Inheimusist and was eventually hung by the deksu until dead.\(See also: trollydor) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 11:20:47 mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:17:22
mthowe!~morganh@unaffiliated/mthowe 2017/09/03 18:34:15 3 scratch is /me scratches her head at $args. kg!~krok@unaffiliated/krok/x-1434802 2017/09/03 18:36:07 qwename!~qwename@unaffiliated/qwename 2018/01/28 20:15:35
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:34:41 1 secondmostu is Googenheimese: something that comes 3rd if you start from zero, follows foremostu, and precedes trihapsu mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 08:54:18
nai!~naim@monade.li 2019/04/13 15:25:03 14 shrug is /say ¯\_(ツ)_/¯ nai!~naim@monade.li 2019/04/13 15:26:26 nil!n@monade.li 2019/07/16 13:52:48
e!e@freenode/staff/spy.edk 2019/08/25 08:19:31 16 simapic is /call rq | { stripq } | { apic } nil!~n@monade.li 2019/09/06 10:28:32
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/24 13:26:14 7 simatk is /call echo $atk_sayings nil!~n@monade.li 2019/09/01 03:19:59
nil!~n@monade.li 2019/08/14 16:31:28 57 simchristopher is /call simnh nil!~n@monade.li 2019/09/04 11:33:48
nil!~n@monade.li 2019/08/04 14:58:57 176 sime is /call echo $e_dislike &{pluralize ${rpg_thing}}. nil!~n@monade.li 2019/08/14 16:36:12 NH!~NextHendr@unaffiliated/nexthendrix 2019/09/05 14:48:24
oldlaptop!~quassel@45.63.78.126 2019/05/28 19:09:39 80 simgarp is /call garpify &{stripq &{rq pragma-}} oldlaptop!~quassel@45.63.78.126 2019/05/31 13:11:19 nil!~n@monade.li 2019/09/05 15:34:20
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/06 15:34:46 15 simhitler is /call --keyword-override=talkgermanto talkgermanto Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/09/04 14:45:46
oldlaptop!~quassel@45.63.78.126 2019/06/02 08:12:41 5 similwrath is /code tcl set _s [join $argv]\n while {[regexp -indices {[[:space:]]([a-z])} $_s -> _c]} { set _s [string toupper $_s {*}$_c]}\n puts [string toupper $_s 0 0] oldlaptop!~quassel@45.63.78.126 2019/06/02 08:28:51 oldlaptop!~quassel@45.63.78.126 2019/06/02 08:29:52
nil!~n@monade.li 2019/08/06 15:05:30 48 simk is /say $k_says NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 14:47:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/04 07:03:34 75 simnai is /call french | {uc} Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/09/04 14:47:32
nil!~n@monade.li 2019/05/26 12:52:51 34 simnai2 is /call cc -W int min=3,rate=12;char alphabet[]="AAABCCDEEEEEFGHIJKLMNOOOPQRSSTUUUVWXYYYZ ";srand(time(0));while(min&&min--||rand()%rate)putchar(alphabet[rand()%((sizeof alphabet)-1)]); nil!~n@monade.li 2019/05/26 13:03:23 christopher!NextHendri@unaffiliated/nexthendrix 2019/08/24 13:28:57
nil!~n@monade.li 2019/05/26 16:08:16 97 simnai3 is /code c11 -W int w=argc>1?atoi(argv[1]):3,l=argc>2?atoi(argv[2]):5;char c[]="AAAAABBCCDDEEEEEEEFFGHIIIIJJKLLMMNNOOOOPPQRRSSTTUUUUVVWXYYZ";srand(time(0));do{do putchar(c[rand()%(sizeof c-1)]);while(rand()%l);putchar(' ');}while(rand()%w) christopher!NextHendri@unaffiliated/nexthendrix 2019/08/24 13:28:51
nil!~n@monade.li 2019/05/27 10:16:25 11 simnai4 is /code c11 -W int w=argc>1?atoi(argv[1]):3,p=argc>2?atoi(argv[2]):2;int mw=2,mp=1,Mp=4,mpp,Mpp,s,n,i;char *c[]={"AAEEEIIOOUUY","BCDFGHJKLMNPQRSTVWXYZ"};srand(time(0));while(mw&&mw--||rand()%w){s=rand()%2;mpp=mp,Mpp=Mp;while((mpp&&(s||mpp--)||rand()%p)&&(s||Mpp--)){n=s?rand()%20/9+1:rand()%5/4+1;for(i=0;i++<n;)putchar(c[s][rand()%strlen(c[s])]);s^=1;}putchar(' ');} nil!~n@monade.li 2019/08/06 11:36:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/06 15:35:07 4 simnap is /call --keyword-override=talkfrenchto talkfrenchto christopher!NextHendri@unaffiliated/nexthendrix 2019/08/24 13:29:28
e!e@freenode/staff/spy.edk 2019/08/06 14:38:13 198 simnh is /call echo $nh_sayings pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/14 16:05:42 nil!~n@monade.li 2019/09/05 07:04:15
zalt!~lambda443@unaffiliated/lambda443 2019/08/04 14:17:17 199 simnil is /call --keyword-override=talkfrenchto echo $nil_says NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 14:47:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 12:42:58 4 simnonk is /say haha i'm so stupid lol ching chong ding dong door stop table top haha lol pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 14:47:13
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/14 17:49:28 194 simrandom is /call sim &{echo $sims} nil!~n@monade.li 2019/09/06 10:32:35
Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/04 09:57:08 67 simremavas is /say $remavas_says taylor!~krok@unaffiliated/krok 2019/08/29 11:24:56
nil!~n@monade.li 2019/08/19 07:12:11 1 simricardassim is /call echo ,C11 $positive_digits.$digits.$digits.$digits nil!~n@monade.li 2019/08/19 07:12:13
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/14 17:48:43 0 sims is nai pragma- nh christopher e APic Zhivago sjohnson pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 17:05:49 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 15:03:51 11 simsj is /call echo $sj_sayings nil!~n@monade.li 2019/09/06 10:32:35
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 15:04:12 10 simsjohnson is /call simsj nil!~n@monade.li 2019/09/06 10:32:35
nil!~n@monade.li 2019/08/22 15:17:52 9 simtaylor is /call simk NH!~NextHendr@unaffiliated/nexthendrix 2019/09/03 14:51:24
e!e@freenode/staff/spy.edk 2019/08/27 08:43:22 46 simzhivago is /say $zhivago_sayings e!e@freenode/staff/spy.edk 2019/08/27 08:43:40 nil!~n@monade.li 2019/09/04 11:35:01
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 15:04:42 0 sj_sayings is "Do girls have &{pluralize $body_part}?" nobody
sjohnson!~sjohnson@cow.sj.rfc1459.net 2017/08/22 17:41:50 6 sjsort is test1 sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/02/19 19:49:03 sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/02/19 19:48:02
alyptik!ayy@youlosethega.me 2017/10/01 15:35:24 2 snorkel is /call kneads k!~krok@unaffiliated/krok 2018/03/16 15:31:46
alyptik!ayy@youlosethega.me 2017/09/29 11:48:24 5 sort is /call fact ##c sort $args k!~krok@unaffiliated/krok 2018/01/29 14:32:38
oldlaptop!~quassel@45.63.78.126 2019/05/26 18:27:08 7 spellcth is /call cc srand(time(0)); printf("cthu"); while (rand() % 6) printf("%c", rand() % 2 ? 'u' : 'l' ); printf("hu"); oldlaptop!~quassel@45.63.78.126 2019/05/27 17:37:35
dho!~dho@veep.9vx.org 2017/09/13 18:28:40 5 spinthebottle is /say $randomnick kisses $randomnick $eat_adverbs alyptik!ayy@youlosethega.me 2017/09/15 12:23:36
dho!~dho@veep.9vx.org 2017/09/13 18:33:44 8 spinthecoffee is /say $randomnick trips and $shoot_action $randomnick with a $flavor cup of $coffee_ingredient coffee! kg!~krok@unaffiliated/krok/x-1434802 2017/09/13 18:39:30 k!~krok@unaffiliated/krok 2018/03/24 17:38:40
dho!~dho@veep.9vx.org 2017/09/13 17:59:28 3 spintheelderberries is /say $randomnick's father smelt of elderberries dho!~dho@veep.9vx.org 2017/09/13 18:49:45
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/13 17:46:02 15 spinthehamster is /say $randomnick's mother was a hamster! lambda443!~lambda443@unaffiliated/lambda443 2017/09/15 18:44:27
dho!~dho@veep.9vx.org 2017/09/13 18:13:34 0 spinthemeat is /say $randomnick's mom warned you about that site! nobody
dho!~dho@veep.9vx.org 2017/09/13 18:13:58 13 spinthepragma- is /say $randomnick's mom spins on pragma- nh!~NextHendr@unaffiliated/nexthendrix 2019/09/01 14:37:40
lambda443_null!~lambda443@unaffiliated/lambda443 2017/09/17 18:23:23 3 stalk is /me browses pictures on social media where $args is mentioned. jp!ayy@youlosethega.me 2018/01/13 13:16:28
jp!ayy@youlosethega.me 2018/06/02 17:31:31 16 stfu is /say shut the fuck up $args jp!ayy@youlosethega.me 2018/06/02 17:37:07 taylor!~krok@unaffiliated/krok 2019/08/25 19:38:49
oldlaptop!~quassel@45.63.78.126 2019/05/28 19:22:22 99 stripq is /code tcl puts [regsub {[0-9]*: <[[:graph:]]*> } [join $argv] "" ] oldlaptop!~quassel@45.63.78.126 2019/05/28 19:22:57 nil!~n@monade.li 2019/09/06 10:28:32
k!~krok@unaffiliated/krok 2019/04/09 08:57:19 6 t is /call time nai!~naim@monade.li 2019/05/02 15:48:08
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:56:26 1 tardese is Googenheimese: The language spoken by the people of Tardscape mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:57:38 k!~krok@unaffiliated/krok 2019/04/13 13:43:59
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 09:09:45 1 tardfest is Googenheimese: Also referred to as the dark ages, the darkfest, or the dorkfest. Ended by the coming of Heimus and the age of Enlightenment. k!~krok@unaffiliated/krok 2019/04/13 13:44:22
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:55:26 2 tardpocalypse is Googenheimese: a horrific unnatural disaster that occurred shortly after y2k that turned the majority of the citizens of Tardscape mentally retarded. Scientists are 97% in agreement that one event caused the other, they just aren't sure which. mr-robert!sid257242@gateway/web/irccloud.com/x-sid257242 2018/04/11 09:38:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 14:47:17 3 taso is /say the absolute state of $args pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 15:18:38
oldlaptop!~quassel@45.63.78.126 2019/05/31 19:36:40 20 tcimnai is /call tcl set _m 16\n while {rand() * 100 + $_m > 10} { if {$_m > 0} { incr _m -1}\n puts -nonewline [binary format c [expr int(rand() * 26 + 65)]]\n if {rand() > 0.9} { puts -nonewline " " }} oldlaptop!~quassel@45.63.78.126 2019/06/04 12:48:12
oldlaptop!~quassel@45.63.78.126 2019/06/02 14:18:41 3 tclsh is /call tcl oldlaptop!~quassel@45.63.78.126 2019/06/02 17:26:35
e!e@enucs/spy.edk 2018/04/03 01:03:29 1 test1 is Cheese$test2 e!e@enucs/spy.edk 2018/04/03 01:03:34
e!e@enucs/spy.edk 2018/04/03 01:03:32 0 test2 is Hats nobody
naptime!~naptime@47-32-211-227.dhcp.ftwo.tx.charter.com 2017/03/13 08:21:59 3 test20170313 is /say naptime: $nick says hello. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/27 22:53:04
nil!~n@monade.li 2019/08/04 10:41:15 2 test3 is /call sh echo foo echo bar pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/04 10:41:59
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/02 20:39:38 0 testquotes is 'she said "lol let\'s go to the ball game"' "fourscore and 7 year's ago" blah orange pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/02 20:47:51 nobody
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:03:21 1 the-great-regression is Googenheimese: (See: the-great-tarding, tardpocalypse) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:56:08
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 06:52:39 2 the-great-tarding is Googenheimese: The point at which everyone in the land of Tardscape became mentally retarded. Also known as the great regression or the tardpocalypse. (see also: Berkeley, Tard-Zero, millenial) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 10:55:26
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/03 17:11:10 0 time_period is days weeks months years decades centuries millenia eons minutes hours oldlaptop!~quassel@45.63.78.126 2019/06/03 17:11:51 nobody
lambda443!~lambda443@unaffiliated/lambda443 2017/09/13 15:15:32 22 torture is /me says Ni! at $args nai!~naim@monade.li 2019/04/09 12:58:02
oldlaptop!~quassel@45.63.78.126 2019/06/01 18:28:33 30 trep is /code tcl set _e [catch { regexp -inline [lindex $argv 0] [lrange $argv 1 end]} _r]\n if {$_e} { puts "ur regexp sux" } else {puts $_r} oldlaptop!~quassel@45.63.78.126 2019/06/01 18:34:34 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/02 17:03:05
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:36:43 3 trihapsu is Googenheimese: 1) something that occurs after secondmostu 2) (Southern Googenheimese indigenous vernacular slang) the apocalypse, or end of all intelligent life (see: tardpocalypse, the-great-tarding) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:13:07
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 11:19:05 1 trollydor is Googenheimese: A disciple of scolflak who popularized the palm movement, that is to apply your palm to one's own face, or someone else's, when both parties are not in agreement. Widely considered to be a major influence on the Googenheimese national sigil. (See also: scolflak) mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:17:50
k!~krok@unaffiliated/krok 2018/02/22 12:32:56 5 trump is dongs nai!~naim@monade.li 2019/04/08 04:28:13
sjohnson!~sjohnson@cow.sj.rfc1459.net 2017/09/29 08:54:39 3 twitch is https://www.twitch.tv/hexagon128 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/08 11:41:22
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:23:48 6598 u is /call urban nil!~n@monade.li 2019/08/15 12:56:32
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:24:45 529 u2 is /call urban -n2 jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/10 19:47:19
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:24:49 185 u3 is /call urban -n3 glacial!~glacial@unaffiliated/glacial 2018/07/30 19:54:32
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:24:53 111 u4 is /call urban -n4 glacial!~glacial@unaffiliated/glacial 2018/07/30 19:54:51
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:27:16 72 u5 is /call urban -n5 k!~krok@unaffiliated/krok 2018/08/10 20:35:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:27:19 47 u6 is /call urban -n6 glacial!~glacial@unaffiliated/glacial 2018/07/30 19:55:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:27:22 28 u7 is /call urban -n7 glacial!~glacial@unaffiliated/glacial 2018/07/28 11:45:47
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:27:25 41 u8 is /call urban -n8 glacial!~glacial@unaffiliated/glacial 2018/07/28 11:45:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/05/28 21:27:29 34 u9 is /call urban -n9 jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/03 10:20:35
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/26 13:55:27 61 ug is /call u -s up sjohnson!~sjohnson@cow.sj.rfc1459.net 2019/04/27 11:38:37
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/03/12 13:29:09 3 unbant is /call unban atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/03/21 12:06:15
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/03/16 11:23:25 9 unben is /call unban sjohnson!~sjohnson@cow.sj.rfc1459.net 2019/08/17 15:19:30
jp!ayy@youlosethega.me 2018/05/06 19:41:08 4 unbush is /call unnute $args jp!ayy@youlosethega.me 2018/07/10 14:13:44
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 11:23:28 0 unretardery is Googenheimese: a radical concept widely held by Heimusists and the peoples of Googenheim. nobody
sjohnson!~sjohnson@cow.sj.rfc1459.net 2017/09/09 14:12:13 12 urules is /say Try to udict a word or phrase that is neither sexual, sexist, contains offensive stereotypes or drug references, or is racist. No proper nouns. Go in alphabetical order. All disputes are to be voted on. Example text is excluded; only the actual definition counts. iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/26 14:27:31 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/26 14:27:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/04 10:55:12 38 votes is /call voteresults pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/05 12:33:11
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/03 12:17:53 6 wang is /call echo &{dinner} pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/03 12:18:01 nil!~n@monade.li 2019/09/04 09:04:58
atk!~Arch-TK@fsf/member/Arch-TK 2017/03/19 15:34:09 6 wasm is /say http://i.imgur.com/07ziwdV.png atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/10/30 13:56:28
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 10:31:51 28 weigh is /call measure pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/05 15:56:41
k!~krok@unaffiliated/krok 2019/08/06 15:05:55 16 whip is /me whips $args with a $rpg_melee_weapon. $args $rpg_howls $adverbs. nil!~n@monade.li 2019/08/06 15:11:47 k!~krok@unaffiliated/krok 2019/08/06 15:37:05
jp!ayy@youlosethega.me 2018/05/06 23:19:31 13 wtf is /say tfw wtf ftw jp!ayy@youlosethega.me 2018/05/11 23:23:21 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/30 12:26:15
jp!ayy@youlosethega.me 2018/01/04 13:37:14 11 wth is /call starbucks $randomnick from $randomnick's ass k!~krok@unaffiliated/krok 2018/01/12 19:29:55
lambda443!~lmb@188.48.124.241 2017/09/04 09:30:11 7 xinophro is Heimus's cousin. he was born in 2 B.H. when he was 8yo he was kidnapped by the penovians and nothing is known about what happend between that and his return, all historians confirm he returned to kanivro in a few years after the battle of idj (29 A.H.), he was killed by Heimus in the battle of Nabla (See also: googenheima, heimus, penovia, battle-of-nabla, battle-of-idj) lambda443!~lmb@188.48.124.241 2017/09/04 10:35:21 esselfe!~bsfc@unaffiliated/esselfe 2018/07/10 14:23:58
Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/23 17:01:48 2 yuarite is /say YOU ARE RIGHT fstd!~fstd@unaffiliated/fisted 2017/09/22 05:17:44
atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/01/21 07:00:53 6 zalt is Cathy Newman NH!~NextHendr@unaffiliated/nexthendrix 2019/09/04 14:47:18
mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 07:31:14 2 zerosturugi is Googenheimese: 1) precedes foremostu, but only by a tiny amount. 2) (Southern Googenheimese indigenous vernacular slang) the singularity 3) an oven light mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/04 19:19:22
e!e@freenode/staff/spy.edk 2019/08/27 09:28:01 29 zhiv is /call tell $args about simzhivago pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/27 09:29:59 christopher!NextHendri@unaffiliated/nexthendrix 2019/08/28 00:25:46
e!e@freenode/staff/spy.edk 2019/08/27 08:42:57 0 zhivago_sayings is "Please ask your doctor to check you for $rpg_diseases." "Please find a $sizes child to help you." "Were you dropped on your $body_part as a child?" "Please stop pretending to have $rpg_diseases -- it is offensive." "It's like trying to measure a $rpg_thing by using a $rpg_thing." pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/27 09:25:03 nobody
lambda443!~lambda443@unaffiliated/lambda443 2017/09/23 18:46:12 1 zucchini is /me defends $args with a giant zucchini as a weapon. lambda443!~lambda443@unaffiliated/lambda443 2017/09/23 18:46:25

##club-ubuntu


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
NoCode 2010/06/24 02:36:47 35 sudo is /say $nick, make your own damn sandwich! pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/01/25 00:25:53 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/07/12 14:31:32

##connect4


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/05 13:52:42 1 c4 is /call connect4 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/05 13:53:07

##posix


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
Wulf4 2009/04/17 05:53:44 0 E2BIG is Argument list too long nobody
Wulf4 2009/04/17 05:54:12 0 EACCES is Permission denied nobody
Wulf4 2009/04/17 05:57:37 0 EADDRINUSE is Address already in use nobody
Wulf4 2009/04/17 05:57:39 0 EADDRNOTAVAIL is Cannot assign requested address nobody
Wulf4 2009/04/17 05:56:25 0 EADV is Advertise error nobody
Wulf4 2009/04/17 05:57:34 0 EAFNOSUPPORT is Address family not supported by protocol nobody
Wulf4 2009/04/17 05:54:12 2 EAGAIN is Resource temporarily unavailable Wulf 2010/11/21 01:46:15
Wulf4 2009/04/17 05:58:17 0 EALREADY is Operation already in progress nobody
Wulf4 2009/04/17 05:55:45 0 EBADE is Invalid exchange nobody
Wulf4 2009/04/17 05:53:49 1 EBADF is Bad file descriptor Wulf_
Wulf4 2009/04/17 05:56:45 0 EBADFD is File descriptor in bad state nobody
Wulf4 2009/04/17 05:56:37 0 EBADMSG is Bad message nobody
Wulf4 2009/04/17 05:55:48 0 EBADR is Invalid request descriptor nobody
Wulf4 2009/04/17 05:55:55 0 EBADRQC is Invalid request code nobody
Wulf4 2009/04/17 05:55:57 0 EBADSLT is Invalid slot nobody
Wulf4 2009/04/17 05:56:02 0 EBFONT is Bad font file format nobody
Wulf4 2009/04/17 05:54:14 0 EBUSY is Device or resource busy nobody
Wulf4 2009/04/17 05:58:44 0 ECANCELED is Operation canceled nobody
Wulf4 2009/04/17 05:53:51 0 ECHILD is No child processes nobody
Wulf4 2009/04/17 05:55:25 1 ECHRNG is Channel number out of range lemonade` 2011/10/09 18:33:20
Wulf4 2009/04/17 05:56:32 0 ECOMM is Communication error on send nobody
Wulf4 2009/04/17 05:57:50 0 ECONNABORTED is Software caused connection abort nobody
Wulf4 2009/04/17 05:58:09 0 ECONNREFUSED is Connection refused nobody
Wulf4 2009/04/17 05:57:52 0 ECONNRESET is Connection reset by peer nobody
Wulf4 2009/04/17 05:55:02 0 EDEADLK is Resource deadlock avoided nobody
Wulf4 2009/04/17 05:56:00 0 EDEADLOCK is Resource deadlock avoided nobody
Wulf4 2009/04/17 05:57:14 0 EDESTADDRREQ is Destination address required nobody
Wulf4 2009/04/17 05:54:57 0 EDOM is Numerical argument out of domain nobody
Wulf4 2009/04/17 05:56:34 0 EDOTDOT is RFS specific error nobody
Wulf4 2009/04/17 05:58:37 0 EDQUOT is Disk quota exceeded nobody
Wulf4 2009/04/17 05:54:16 0 EEXIST is File exists nobody
Wulf4 2009/04/17 05:54:12 1 EFAULT is Bad address Wulf_
Wulf4 2009/04/17 05:54:41 0 EFBIG is File too large nobody
Wulf4 2009/04/17 05:58:12 0 EHOSTDOWN is Host is down nobody
Wulf4 2009/04/17 05:58:14 0 EHOSTUNREACH is No route to host nobody
Wulf4 2009/04/17 05:55:23 0 EIDRM is Identifier removed nobody
Wulf4 2009/04/17 05:57:02 0 EILSEQ is Invalid or incomplete multibyte or wide character nobody
Wulf4 2009/04/17 05:58:19 0 EINPROGRESS is Operation now in progress nobody
Wulf4 2009/04/17 05:53:39 0 EINTR is Interrupted system call nobody
Wulf4 2009/04/17 05:54:29 1 EINVAL is Invalid argument joeyadams
Wulf4 2009/04/17 05:53:39 0 EIO is Input/output error nobody
Wulf4 2009/04/17 05:57:57 0 EISCONN is Transport endpoint is already connected nobody
Wulf4 2009/04/17 05:54:27 0 EISDIR is Is a directory nobody
Wulf4 2009/04/17 05:58:32 0 EISNAM is Is a named type file nobody
Wulf4 2009/04/17 05:58:49 0 EKEYEXPIRED is Key has expired nobody
Wulf4 2009/04/17 05:58:54 0 EKEYREJECTED is Key was rejected by service nobody
Wulf4 2009/04/17 05:58:52 0 EKEYREVOKED is Key has been revoked nobody
Wulf4 2009/04/17 05:55:42 1 EL2HLT is Level 2 halted joeyadams
Wulf4 2009/04/17 05:55:27 0 EL2NSYNC is Level 2 not synchronized nobody
Wulf4 2009/04/17 05:55:30 1 EL3HLT is Level 3 halted joeyadams
Wulf4 2009/04/17 05:55:32 0 EL3RST is Level 3 reset nobody
Wulf4 2009/04/17 05:56:49 0 ELIBACC is Can not access a needed shared library nobody
Wulf4 2009/04/17 05:56:52 0 ELIBBAD is Accessing a corrupted shared library nobody
Wulf4 2009/04/17 05:56:59 0 ELIBEXEC is Cannot exec a shared library directly nobody
Wulf4 2009/04/17 05:56:57 0 ELIBMAX is Attempting to link in too many shared libraries nobody
Wulf4 2009/04/17 05:56:54 0 ELIBSCN is .lib section in a.out corrupted nobody
Wulf4 2009/04/17 05:55:35 0 ELNRNG is Link number out of range nobody
Wulf4 2009/04/17 05:55:15 0 ELOOP is Too many levels of symbolic links nobody
Wulf4 2009/04/17 05:58:42 0 EMEDIUMTYPE is Wrong medium type nobody
Wulf4 2009/04/17 05:54:34 0 EMFILE is Too many open files nobody
Wulf4 2009/04/17 05:54:57 0 EMLINK is Too many links nobody
Wulf4 2009/04/17 05:57:17 0 EMSGSIZE is Message too long nobody
Wulf4 2009/04/17 05:56:32 0 EMULTIHOP is Multihop attempted nobody
Wulf4 2009/04/17 05:55:05 0 ENAMETOOLONG is File name too long nobody
Wulf4 2009/04/17 05:58:30 0 ENAVAIL is No XENIX semaphores available nobody
Wulf4 2009/04/17 05:57:42 0 ENETDOWN is Network is down nobody
Wulf4 2009/04/17 05:57:47 0 ENETRESET is Network dropped connection on reset nobody
Wulf4 2009/04/17 05:57:44 0 ENETUNREACH is Network is unreachable nobody
Wulf4 2009/04/17 05:54:31 0 ENFILE is Too many open files in system nobody
Wulf4 2009/04/17 05:55:52 0 ENOANO is No anode nobody
Wulf4 2009/04/17 05:57:54 0 ENOBUFS is No buffer space available nobody
Wulf4 2009/04/17 05:55:40 0 ENOCSI is No CSI structure available nobody
Wulf4 2009/04/17 05:56:07 0 ENODATA is No data available nobody
Wulf4 2009/04/17 05:54:21 0 ENODEV is No such device nobody
Wulf4 2009/04/17 05:53:39 0 ENOENT is No such file or directory nobody
Wulf4 2009/04/17 05:53:46 0 ENOEXEC is Exec format error nobody
Wulf4 2009/04/17 05:58:47 0 ENOKEY is Required key not available nobody
Wulf4 2009/04/17 05:55:07 0 ENOLCK is No locks available nobody
Wulf4 2009/04/17 05:56:23 0 ENOLINK is Link has been severed nobody
Wulf4 2009/04/17 05:58:39 0 ENOMEDIUM is No medium found nobody
Wulf4 2009/04/17 05:54:12 0 ENOMEM is Cannot allocate memory nobody
Wulf4 2009/04/17 05:55:20 0 ENOMSG is No message of desired type nobody
Wulf4 2009/04/17 05:56:15 0 ENONET is Machine is not on the network nobody
Wulf4 2009/04/17 05:56:17 0 ENOPKG is Package not installed nobody
Wulf4 2009/04/17 05:57:22 0 ENOPROTOOPT is Protocol not available nobody
Wulf4 2009/04/17 05:54:44 0 ENOSPC is No space left on device nobody
Wulf4 2009/04/17 05:56:12 0 ENOSR is Out of streams resources nobody
Wulf4 2009/04/17 05:56:05 0 ENOSTR is Device not a stream nobody
Wulf4 2009/04/17 05:55:10 0 ENOSYS is Function not implemented nobody
Wulf4 2009/04/17 05:54:12 0 ENOTBLK is Block device required nobody
Wulf4 2009/04/17 05:57:59 0 ENOTCONN is Transport endpoint is not connected nobody
Wulf4 2009/04/17 05:54:24 0 ENOTDIR is Not a directory nobody
Wulf4 2009/04/17 05:55:12 0 ENOTEMPTY is Directory not empty nobody
Wulf4 2009/04/17 05:58:27 0 ENOTNAM is Not a XENIX named type file nobody
Wulf4 2009/04/17 05:58:59 0 ENOTRECOVERABLE is State not recoverable nobody
Wulf4 2009/04/17 05:57:12 0 ENOTSOCK is Socket operation on non-socket nobody
Wulf4 2009/04/17 05:54:36 0 ENOTTY is Inappropriate ioctl for device nobody
Wulf4 2009/04/17 05:56:42 0 ENOTUNIQ is Name not unique on network nobody
Wulf4 2009/04/17 05:53:41 0 ENXIO is No such device or address nobody
Wulf4 2009/04/17 05:57:29 1 EOPNOTSUPP is Operation not supported Wulf 2011/11/18 21:06:40
Wulf4 2009/04/17 05:56:39 0 EOVERFLOW is Value too large for defined data type nobody
Wulf4 2009/04/17 05:58:57 0 EOWNERDEAD is Owner died nobody
Wulf4 2009/04/17 05:53:39 0 EPERM is Operation not permitted nobody
Wulf4 2009/04/17 05:57:32 0 EPFNOSUPPORT is Protocol family not supported nobody
Wulf4 2009/04/17 05:54:57 0 EPIPE is Broken pipe nobody
Wulf4 2009/04/17 05:56:32 0 EPROTO is Protocol error nobody
Wulf4 2009/04/17 05:57:24 0 EPROTONOSUPPORT is Protocol not supported nobody
Wulf4 2009/04/17 05:57:20 0 EPROTOTYPE is Protocol wrong type for socket nobody
Wulf4 2009/04/17 05:55:00 1 ERANGE is Numerical result out of range crossroads1112!~crossroad@2602:306:320a:6fc0::43 2015/09/09 18:15:41
Wulf4 2009/04/17 05:56:47 0 EREMCHG is Remote address changed nobody
Wulf4 2009/04/17 05:56:20 0 EREMOTE is Object is remote nobody
Wulf4 2009/04/17 05:58:34 0 EREMOTEIO is Remote I/O error nobody
Wulf4 2009/04/17 05:57:04 0 ERESTART is Interrupted system call should be restarted nobody
Wulf4 2009/04/17 05:54:57 0 EROFS is Read-only file system nobody
Wulf4 2009/04/17 05:58:02 0 ESHUTDOWN is Cannot send after transport endpoint shutdown nobody
Wulf4 2009/04/17 05:57:27 0 ESOCKTNOSUPPORT is Socket type not supported nobody
Wulf4 2009/04/17 05:54:46 0 ESPIPE is Illegal seek nobody
Wulf4 2009/04/17 05:53:39 1 ESRCH is No such process Wulf_
Wulf4 2009/04/17 05:56:32 0 ESRMNT is Srmount error nobody
Wulf4 2009/04/17 05:58:22 0 ESTALE is Stale NFS file handle nobody
Wulf4 2009/04/17 05:57:07 0 ESTRPIPE is Streams pipe error nobody
Wulf4 2009/04/17 05:56:10 0 ETIME is Timer expired nobody
Wulf4 2009/04/17 05:58:07 0 ETIMEDOUT is Connection timed out nobody
Wulf4 2009/04/17 05:58:04 0 ETOOMANYREFS is Too many references: cannot splice nobody
Wulf4 2009/04/17 05:54:39 1 ETXTBSY is Text file busy Wulf4
Wulf4 2009/04/17 05:58:24 0 EUCLEAN is Structure needs cleaning nobody
Wulf4 2009/04/17 05:55:37 0 EUNATCH is Protocol driver not attached nobody
Wulf4 2009/04/17 05:57:09 0 EUSERS is Too many users nobody
Wulf4 2009/04/17 05:55:17 0 EWOULDBLOCK is Resource temporarily unavailable nobody
Wulf4 2009/04/17 05:54:19 0 EXDEV is Invalid cross-device link nobody
Wulf4 2009/04/17 05:55:50 0 EXFULL is Exchange full nobody
Major-Willard 2005/02/04 15:21:38 2 SIGBUS is a signal sent when an address is referenced that is not correctly aligned Major-Willard
Major-Willard 2005/01/01 12:47:49 2 SIGSEGV is a signal sent when an address is referenced that has not been allocated to your virtual address space qwename!~qwename@unaffiliated/qwename 2017/08/28 03:20:06
Major-Willard 2005/01/01 12:53:01 0 SIGUSR1 is a signal reserved for unspecified user process use nobody
Major-Willard 2005/01/01 12:57:19 0 SIGUSR2 is a signal reserved for unspecified user process use nobody
PoppaVic 2010/03/14 21:01:32 66 apue is Advanced Programming in the UNIX Environment, by Stevens and Rago, see http://www.apuebook.com/ pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/14 19:30:16
kp 2007/12/14 21:20:12 5 apue2 is http://www.apuebook.com/ Draconx
twkm 2007/08/10 07:49:16 81 beej is /say Beej's Guide to Network Programming -- Using Internet Sockets is at http://beej.us/guide/bgnet/ tires!~pi@cpe-172-101-20-238.maine.res.rr.com 2018/02/25 13:37:21
Major-Willard 2005/01/01 20:14:50 0 gettimeofday is a function that returns the time in seconds and milliseconds since the epoch (Thursday, January 1 1970) and the local timezone nobody
twkm 2005/01/01 12:00:21 8 ipc is /say IPC is Inter-Process Communication. A nice tutorial for UNIX is at http://www.ecst.csuchico.edu/~beej/guide/ipc/ popl 2013/05/25 14:33:33
pragma_ 2007/05/18 06:51:51 38 posix is /say The Open Group Base Specifications Issue 7: http://pubs.opengroup.org/onlinepubs/9699919799/ pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/04/17 02:56:00 edk!~edk@spy/edk0 2015/08/12 01:25:46
PoppaVic 2007/06/10 07:52:42 7 pth is http://www.gnu.org/software/pth/ pragma_ 2011/02/02 16:47:24
pragma_ 2008/02/14 18:26:01 1 raw_ping is http://courses.cs.vt.edu/~cs4254/fall04/slides/raw_1.pdf pragma_
pragma_ 2005/01/17 23:21:32 33 unbufferedgetc is /say How to disable line-buffering with termios/cbreak: http://shtrom.ssji.net/skb/getc.html and http://c-faq.com/osdep/cbreak.html oldlaptop!~quassel@45.63.78.126 2017/11/20 04:13:38
twkm 2004/12/30 18:37:22 3 unixfaq is http://www.erlenstar.demon.co.uk/unix/faq_toc.html luneff 2010/08/14 02:19:13
pragma_ 2010/03/28 02:07:44 81 unp is /call unp1 kate!~kate@unaffiliated/kate 2018/07/30 04:27:00
pragma_ 2007/11/13 19:31:19 166 unp1 is Unix Network Programming Vol I: http://www.unpbook.com/ kate!~kate@unaffiliated/kate 2018/07/30 04:27:00
twkm 2005/01/01 19:23:39 25 unp2 is unix network programming, volume 2: interprocess communications, by stevens, see http://www.kohala.com/start/unpv22e/unpv22e.html Dianora 2011/02/12 08:00:08

##spinach


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
dyl!~dyl@150.212.127.49 2018/02/27 12:19:35 1 ,roulette is /call ,sh sudo dd if=/dev/urandom of=/dev/mem bs=1 count=1 seek=$RANDOM && echo 'worked' k!~krok@unaffiliated/krok 2018/07/07 15:13:32
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:28:48 58 abort is /call spinach abort pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/20 18:27:27
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/28 18:06:30 17 batavg is /call rank expr floor((goodlies / questions) * 1000) iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/30 14:29:27 oldlaptop!~quassel@45.63.78.126 2019/05/07 13:30:09
k!~krok@unaffiliated/krok 2018/02/12 19:57:15 0 caio is /call exit nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/31 21:47:30 5 e is /call exit iamgarp!~amgarp@unaffiliated/pragmatic-chaos 2019/04/11 13:50:36
jp!ayy@youlosethega.me 2018/02/18 14:12:55 17 edit is /call spinach edit pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/03/02 10:52:36
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 19:51:09 377 exit is /call spinach exit ptrmnbrdg!~manjaro-g@156.34.236.34 2019/08/10 12:58:19
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/22 15:46:10 59 filter is /call spinach filter pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/11 15:28:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/10 18:20:42 0 foofoo is orange nobody
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/22 17:03:12 1 frech is /call french iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/22 17:03:14
fstd!~fstd@unaffiliated/fisted 2019/04/23 14:44:16 1 fstdfilter is /call spinach filter include MATH...NUMBERS|MATHEMATICS|MEDICINE|MISC|MUSIC|MUSIC.TERMS|NAME.THAT.CAR.MAKER|NATURE|NAUTICAL|NETHACK|ONE.LINERS|PERIODIC.TABLE|PHILOSOPHY|PHOBIAS|PHONETIC.ALPHABET|PHONETIC.RADIO.CALL.SIGNS|PHYSICS|PLANETS|PLANTS|PRINTING|PSYCHOLOGY|RADIO.ALPHABET|ROBOTECH|SCIENCE|SCIENCE...NATURE|SCIENCE...TECHNOLOGY|SEMANTICS|SOUTHPARK|SPORTS|STRUCTURES|TECHNICAL.ACRONYMS|TECHNOLOGY|TENNIS|TRANSPORTATION|UNEXPLAINED|URBAN.LEGENDS|USELESS.FACTS|USELESS.TRIVIA|WORDS...NUMBERS|ABBREVIATIONS|ACRONYM.SOUP|ACRONYMS|AIRCRAFT|ALCOHOL|ANALOGIES|ARCHAEOLOGY|ARCHAIC.DEFINITIONS|ARCHITECTURE|ASTRONOMY|AVIATION|BIOLOGY|CARS|CHEMISTRY|CHESS|CODES|COLORS|COMPUTER.SCIENCE|COMPUTERS|DISCOVERIES|DONT.STRAIN.YOURSELF.THINKING|DRIVING|ELECTRICITY|ELECTRONICS|FAMOUS.LAST.WORDS|GEOLOGY|HARRY.POTTER|INFORMAL.DEFINITIONS|INVENTIONS|LANGUAGE|LANGUAGE...LINGUISTICS|LINGUISTICS|LOGIC iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/23 14:56:19 fstd!~fstd@unaffiliated/fisted 2019/04/26 10:40:48
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/23 13:17:35 4 funfilter is /call spinach filter include animal|group.of|analogies|alcohol|devil|slang|baby|prepared|birthstone|booze|confucius|cliches|similies|chess|cartoons|card.games|childrens|board.games|cocktails|colors|computer.games|crappy.jokes|comics|disney|thinking|fairy|quotes|food|games|guess.the.word|hitchhiker|trivia|plates|legends|rings|potter|python|muppet|misheard|tag.lines|name.that.thing|name.that.drink|popeye|punny|saturday|wizard|wonder|x.files|wild.card|links iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/25 19:21:27 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/28 17:41:33
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/22 17:52:42 2 garpfilter is /call spinach filter exclude music|olympics iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/23 12:47:23
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/31 21:06:45 55 howtoplay is /say Use the `!spinach` command. `spinach join` to join a game. `spinach ready` to ready up. `spinach choose` to choose a category or truth. `spinach lie` to submit a lie. See `!spinach` for other commands. Most of the `!spinach` commands have short-hand aliases; e.g. `!j` `!r` `!c` `!l`, etc. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/13 00:56:41 ptrmnbrdg!~manjaro-g@156.34.236.34 2019/08/10 12:55:37
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:28:26 1388 j is /call spinach join ptrmnbrdg!~manjaro-g@156.34.236.34 2019/08/10 12:57:33
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/04 19:27:42 37 keep is /call spinach keep nitrix!~nitrix@haskell/developer/nitrix 2019/08/28 18:51:17
oldlaptop!~quassel@45.63.78.126 2019/05/05 09:44:28 0 killtheilwrath is /call voteremove nobody
jp!ayy@youlosethega.me 2018/01/29 21:23:46 6 leaderboard is /call spinach leaderboard dho!~dho@freenode/staff/dho 2019/04/24 15:08:26
oldlaptop!~quassel@45.63.78.126 2019/05/10 18:47:58 9 literallystupid is /code sh echo "$@" | sed 's/ / literally /g' pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/20 08:43:07
fstd!~fstd@unaffiliated/fisted 2019/05/03 16:33:51 8 nai is amazing nai!~naim@monade.li 2019/05/03 17:39:50 nil!~n@monade.li 2019/08/04 11:10:09
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/02 13:49:16 103 p is /call players oldlaptop!~quassel@45.63.78.126 2019/05/13 18:42:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/03/01 11:07:38 60 pingall is /call eval my @a = keys %{ $self->{pbot}->{nicklist}->{nicklist}->{'$channel'}}; "@a" iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/20 17:17:27 nil!n@monade.li 2019/06/05 12:55:04
oldlaptop!~quassel@45.63.78.126 2019/05/03 17:40:49 1 placerate is /call spinach rank expr (first + second + third) / games oldlaptop!~quassel@45.63.78.126 2019/05/03 17:40:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/31 20:37:52 180 players is /call spinach players oldlaptop!~quassel@45.63.78.126 2019/05/13 18:42:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/31 21:47:33 839 q is /call spinach exit pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/19 17:27:15 Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/04 10:03:30
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/30 20:01:53 29 quit is /call exit nil!n@monade.li 2019/05/29 05:49:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 20:16:20 1399 r is /call ready ptrmnbrdg!~manjaro-g@156.34.236.34 2019/08/10 12:58:01
nil!n@monade.li 2019/05/29 05:49:05 1 ragequit is /call quit nil!n@monade.li 2019/05/29 05:49:07
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/24 15:08:49 326 rank is /call spinach rank $args iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/03 16:03:20 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/05 13:48:14
jp!ayy@youlosethega.me 2018/01/28 12:30:45 1619 ready is /call spinach ready ptrmnbrdg!~manjaro-g@156.34.236.34 2019/08/10 12:58:01
jp!ayy@youlosethega.me 2018/02/26 16:03:45 1816 rr is /call reroll nil!n@monade.li 2019/06/05 13:38:16
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 19:22:48 69 rules is /say Each round, a player chooses a category and then a question is shown. Everybody then privately submits a false answer they hope to deceive others into selecting. Then all the false answers and the truth is shown. Everyone chooses which answer they believe is the truth. You earn massive points for each person you deceive, and slightly less for finding the truth! pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/05 12:31:45 ptrmnbrdg!~manjaro-g@156.34.236.34 2019/08/10 12:55:03
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/02 13:28:05 198 s is /call score nil!n@monade.li 2019/06/05 13:09:10
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/23 12:59:23 31 schoolfilter is /call spinach filter include abbrev|acron|animal|archaeology|anatomy|medical|astronomy|biology|botany|business|breeds|chemistry|computer|constell|countries|currenc|definit|dinosaur|discoveries|electricity|electronics|geography|geology|grammar|history|language|logic|math|medicine|^music$|^musical instruments$|mythology|anthems|capitals|nature|nautical|pathology|periodic|philos|phobias|physics|plants|planets|proverbs|psychology|religion|church|similes|scents|science|tech|study.of|laws|urban|usage|numbers|zoology|birthstones pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/11 15:52:56 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/11 15:53:00
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/31 20:13:27 290 score is /call spinach score nil!n@monade.li 2019/06/05 13:09:10
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/31 20:38:15 16 scores is /call score iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/08 01:30:25
oldlaptop!~quassel@45.63.78.126 2019/04/29 14:27:12 12 sedate is /me sedates $args with the sedation stick oldlaptop!~quassel@45.63.78.126 2019/05/10 18:12:08
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/27 21:27:50 53 set is /call spinach set pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/05 13:16:45
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/29 18:03:45 677 show is /call spinach show

with_args: /call factshow
nil!n@monade.li 2019/06/05 13:29:54
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/14 21:32:02 2183 skip is /call spinach skip taylor!~krok@unaffiliated/krok 2019/09/05 16:16:35
jp!ayy@youlosethega.me 2018/02/18 15:26:34 1 skop is /call skip halfwit!~Halfwit@unaffiliated/halfwit 2018/02/20 18:17:29
jp!ayy@youlosethega.me 2018/02/27 12:08:47 8 skup is /call skip dyl!~dylukes@ec2-35-173-217-195.compute-1.amazonaws.com 2018/03/12 14:05:32
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:28:34 77 start is /call spinach start dodobrain!~dodobrain@unaffiliated/freakabcd 2019/09/02 17:56:58
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:28:41 116 stop is /call spinach stop sjohnson!~sjohnson@cow.sj.rfc1459.net 2019/04/10 23:49:03
zalt!~lambda443@unaffiliated/lambda443 2019/04/29 12:48:36 53 strcalc is /code python3 import sys\n\nargs = sys.argv[1:]\nmx = [0 for i in range(max(map(len, args)))] if len(args) > 0 else None\nfor arg in args:\n mx=[mx[i]+(ord(arg[i]) if i < len(arg) else 0) for i in range(len(mx))]\nprint(' + '.join(args) if len(args) > 1 else ' + '.join([' nothing', *args]), '=' , '' .join([chr(((i-97)%26)+97) for i in mx]) if len(args) > 0 else 'wtf' ) zalt!~lambda443@unaffiliated/lambda443 2019/04/29 13:19:17 zalt!~lambda443@unaffiliated/lambda443 2019/07/07 12:03:11
zalt!~lambda443@unaffiliated/lambda443 2019/04/29 14:34:34 6 strcalcm is /code python3 import sys\nprint(''.join(map(chr, map(lambda x: (x - 97) % 26 + 97, map(sum, zip(*map(lambda x: (*map(ord, x), *((0,) * (max(map(len, sys.argv[1:])) - len(x)))) , sys.argv[1:]))))))) iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/29 14:46:59 zalt!~lambda443@unaffiliated/lambda443 2019/04/29 14:56:47
zalt!~lambda443@unaffiliated/lambda443 2019/04/29 16:48:01 11 strcalcmm is /code python3 import sys;g=sys.argv[1:];m=map;print(''.join(m(lambda x:chr((sum(x)-19)%26+97),zip(*m(lambda w:m(ord,w+'\0'*0xf),g))))[:max(m(len,g))]) bungey!~chaos@unaffiliated/pragmatic-chaos 2019/07/08 15:45:51
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/02 13:08:02 1001 t is /call truth $args iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/03 16:07:42 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/03 16:07:09
nai!~naim@monade.li 2019/04/27 12:01:49 0 tony is /call pony nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:00:51 5027 truth is /call spinach truth $args iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/03 16:06:34 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/03 16:07:09
jp!ayy@youlosethega.me 2018/02/11 23:52:17 36 u is /call unready nil!n@monade.li 2019/06/05 13:15:31
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/10 16:02:38 20 unr is /call unready iamgarp!~amgarp@unaffiliated/pragmatic-chaos 2019/04/12 15:42:41
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/10 16:02:24 62 unready is /call spinach unready nil!n@monade.li 2019/06/05 13:15:31
iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/27 21:27:54 1 unset is /call spinach unset iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/04 16:22:46
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/28 18:16:00 39 whyspinach is /say Spinach is loosely based on a game called Fibbage. Why did we choose the name Spinach? When we searched for 'fib' synonyms the first result contained "spinach". This greatly amused us. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/29 22:40:18 dodobrain!~dodobrain@unaffiliated/freakabcd 2019/08/07 18:21:07

#bash


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pgas 2014/04/01 08:24:28 254 ! is /say event not found -- These errors only happen in *interactive* shells when you run commands with ! in them with history expansion enabled. Run set +o histexpand (set +H) to disable it,and put it in your ~/.bashrc to disable it in future shell sessions, too. Regardless, it won't affect scripts. jp!ayy@youlosethega.me 2018/05/15 17:40:03
greycat 2010/07/27 11:04:00 3 !" is /call ! pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/02 19:48:59
kurahaupo1 2015/01/21 10:37:09 0 !#!env is /say In addition to having exec permission, the top of a script MUST have a #! line, called 'shebang' or 'hashbang'. It tells the kernel what program to run your script with. Make sure you adjust it to match where the appropriate version of Bash is installed on your system;. If your system does not have bash installed at /bin/bash you will likely have to adjust any scripts you receive. nobody
karolisl 2007/09/20 05:11:46 2 !set is /say help set <ENTER> http://www.bash-hackers.org/wiki/doku.php?id=commands:builtin:set -- set +H is useful; -evx are very good for debugging. nobody
TheBonsai 2010/02/03 09:44:52 246 " is /call UMQ nobody
ormaaj 2013/02/07 04:20:52 3 "` is /say cmd1 "`cmd2 \"$1\"`" -- An expression that has never been written in the history of mankind; because that would be correct; and those that don't know enough to not use backticks also by necessity don't know how to quote. nobody
kojiro 2007/07/16 13:31:24 29 # is /say Either a comment, or in parameter expansion a count of something. ${#x} is the number of characters in $x. ${#x[@]} is the number of elements in the array 'x', and $# is the number of positional parameters. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 14:28:31
lhunath 2009/08/31 07:44:05 81 #! is /call hashbang kolpad2!~School_wo@c122-107-81-234.carlnfd2.nsw.optusnet.com.au 2017/08/24 04:01:02
variable 2010/09/14 10:09:21 4 #!binbash is /say Use "!#/usr/bin/env bash" - it is more portable and will probably do what the user wants in a modified envrioment nobody
lhunath 2009/10/07 00:18:59 53 $ is /say In bash, $ means "Expand". It is NOT part of your variable name! You can expand "$variable" content, "$(command)" output or "$((arithmetic))" results. nobody
yitz 2008/04/01 21:49:54 98 $! is /say $! expands to the process ID of the most recently executed background (asynchronous) command. nobody
geirha 2010/11/29 08:59:06 57 $" is /say Bash supports $"..." quoting syntax for locale-specific translation. If the current locale is C or POSIX, the dollar sign is ignored. If the string is translated and replaced, the replacement is double-quoted. See http://mywiki.wooledge.org/BashFAQ/098 pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/02 19:49:48
lhunath 2009/07/03 22:51:34 2 $"" is /call $" pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/02 19:49:48
geirha 2011/06/06 00:24:21 75 $# is /say $# expands to the number of arguments, not counting $0. nobody
greycat 2012/10/12 08:27:05 46 $$ is /say $$ expands to the PID of the shell. In a ( ) subshell, it expands to the process ID of the original shell, not the subshell. (Bash 4.0 and above have BASHPID for that.) nobody
BlastHardcheese 2013/12/12 06:43:34 227 $' is /say bash has a special form of quoting, $'string' in which backslash-character combinations are expanded. For example, IFS=$' \t\n' or echo $'It\'s embedded!' http://mywiki.wooledge.org/Quotes nobody
geirha 2014/07/01 07:01:50 18 $'' is /call $' nobody
geirha 2014/11/21 01:21:15 292 $( is /say Command Substitution: "$(cmd "foo bar")" causes the command 'cmd' to be executed with the argument 'foo bar' and "$(..)" will be replaced by the *output*. See http://mywiki.wooledge.org/BashFAQ/002 and http://mywiki.wooledge.org/CommandSubstitution Random832!~random@unaffiliated/random832 2017/06/05 10:48:05
geirha 2010/09/04 09:06:23 91 $(( is /say $((...)) is an arithmetic substitution. After doing the arithmetic, the whole thing is replaced by the value of the expression. See <http://mywiki.wooledge.org/ArithmeticExpression>. nobody
izabera 2015/02/09 07:50:33 2 $(($ is /say # six=1+5 nine=8+1; echo $(($six * $nine)) vs $((six * nine)) nobody
e36freak 2013/07/11 07:50:50 132 $() is /call $( alyptik!alyptik@unaffiliated/alyptik 2017/01/11 02:25:28
iasc 2008/12/11 03:54:38 79 $(< is /say The command substitution $(cat file) can be replaced by the equivalent but faster $(< file). nobody
geirha 2015/02/12 00:58:02 35 $(echo is /say $(echo ...) and echo $(...) are both pointless. Drop the echo and $(), just write ...: rm "$(echo myfile)" -> rm myfile --- echo "$(df -h)" -> df -h; http://www.iki.fi/era/unix/award.html#echo [\!~qwename@unaffiliated/qwename 2017/11/28 07:18:52
lhunath 2011/05/13 01:31:27 204 $* is /call $@ nobody
geirha 2011/02/05 12:53:10 42 $- is /say $- expands to the current option flags as specified upon invocation, by the set builtin command, or those set by the shell itself (such as the -i option). nobody
greycat 2010/07/27 07:47:11 159 $0 is /say $0 is like argv[0] in C. It's whatever the caller decides to put there. You can't rely on it. See http://mywiki.wooledge.org/BashFAQ/028 and http://www.bash-hackers.org/wiki/doku.php/scripting/posparams#the_first_argument nobody
koala_man 2010/09/28 03:04:42 35 $1 is /say Positional parameters by example: echo "First parameter is $1, second is $2. You supplied $# of them. They will now all be copied to /tmp."; cp "$@" /tmp; nobody
lhunath 2014/01/19 06:46:41 214 $? is /say The special parameter ? (expanded by $?) holds the exit status of the last synchronous command. inode!~inode@unaffiliated/inode 2019/06/09 02:07:51
[arx] 2014/09/02 07:12:34 514 $@ is /say The difference between $@ and $*: Without quotes (don't do this!), there is no difference. With double quotes, "$@" expands to each positional parameter as its own argument: "$1" "$2" ..., while "$*" expands to the single argument "$1c$2c...", where 'c' is the first character of IFS. You almost always want "$@" (QUOTED!). The same goes for arrays: "${array[@]}". nobody
geirha 2011/01/10 08:28:24 73 $[ is /say $[...] is an obsolete, deprecated syntax for math. Don't use it. Use $((...)) instead. m712!~annoying@unaffiliated/thefam 2017/09/01 17:00:56
greycat 2011/04/22 14:07:45 56 $_ is /say "$_" expands to the last argument to the previous command, after expansion (man bash, Special Parameters) nobody
kurahaupo 2014/01/22 16:59:05 3 $dayjob is /say DAYJOB is a built-in variable for #bash, and is therefore capitalized nobody
lhunath 2014/07/16 13:25:19 12 $grep is /say ''GREP="/usr/bin/grep -i"; $GREP $FILE'' -- Do NOT put command names or options in variables. Doing so is dangerous and buggy. Variables are containers for DATA. Either inline the command completely or use a *function* instead. http://mywiki.wooledge.org/BashFAQ/050 nobody
shaiguitar 2009/01/04 04:13:32 4 $n is /say http://bash-hackers.org/wiki/doku.php/scripting/posparams \[!~qwename@unaffiliated/qwename 2017/11/12 20:17:25
geirha 2014/04/06 14:45:17 2 $shell is /say The SHELL environment variable is normally set to the login shell specified in the passwd database (/etc/passwd) when you log in. It does NOT reflect what shell you're currently in. For that, try: ps -p $$ kolpad2!~School_wo@c122-107-81-234.carlnfd2.nsw.optusnet.com.au 2017/08/24 03:58:07
lhunath 2013/08/14 19:53:58 5 $tmp is /say Avoid short and meaningless variable names. Use your variable names to communicate what they hold: the more your naming says, the better your code reads. $file, not $f. $remoteHost, not $h. One convention is to use singular words for regular variables, plural for arrays and the first letter of the array for indexes in that array (eg. for f in "${!files[@]}" / for file in "${files[@]}"). jp!ayy@youlosethega.me 2018/01/23 19:50:57
lhunath 2008/04/30 02:23:10 7 $var is /say $var is NOT a variable. var is a variable and $var is the EXPANSION of that variable. bash replaces it by the contents of the variable var. nobody
ormaaj 2015/02/14 06:44:49 223 ${ is /say Without curly braces parameter expansions refer to the longest valid variable name or shortest positional parameter. "${var}bar" expands the parameter named "var" while "$varbar" expands "varbar". "$123" references argv[1] and "${123}" references argv[123]. Braces are requried for parameters > 9, special PEs, and array expansions: ${10}, ${var##pat}, ${arr[5]}. BRACES AREN'T A SUBSTITUTE FOR QUOTES! qwename!~qwename@unaffiliated/qwename 2017/07/17 12:03:59
greycat 2015/02/27 14:03:24 16 ${! is /say See !faq 6 for indirect variables, or !faq 5 for listing array indices. nobody
irc2samus 2009/12/20 11:30:35 3 ${# is /say see !faq length for variables and !faq 5 for array varibles nobody
greycat 2007/05/16 05:52:57 10 ${$ is /say The correct syntax for parameter expansion is ${varMODIFIER} not ${$varMODIFIER}. Remove that second $. nobody
lhunath 2010/09/06 00:15:38 5 ${${ is /say ${x}, ${x%y}, ${x:y:z}, ... are parameter expansions. x needs to be a parameter. you can't 'nest' them like ${${x#y}%z} because ${x#y} is an expansion (a string), not a parameter. nobody
lhunath 2010/10/15 06:12:45 37 ${} is /call ${ qwename!~qwename@unaffiliated/qwename 2017/07/15 01:07:25
ferret 2010/04/28 10:46:21 149 & is /say If you put the control operator & at the end of a command, e.g. ''command args &'', the shell executes the command in the background in a subshell. The shell does not wait for the command to finish, and the return status is 0. Pid of the last backgrounded command is available via the special variable $! nobody
lhunath 2013/06/27 10:15:46 115 && is /call || nobody
izabera 2015/08/31 10:36:18 0 &&: is /say cmd && : prevents set -e from killing the shell, and keeps intact the exit code of cmd nobody
lhunath 2013/07/31 12:00:34 4 &&if is /say Beware: ''a && b || c'' is NOT THE SAME as ''if a; then b; else c; fi''. The former will run 'c' if EITHER 'a' or 'b' fails. The if will run 'c' ONLY if 'a' fails. nobody
\amethyst 2010/06/13 02:05:23 48 &&|| is /say foo && bar || baz is not equivalent to 'if foo; then bar; else baz; fi'. In the former case, baz will happen if *either* foo *or* bar return false. In the latter case, baz will only trigger if foo returns false, regardless of the exit code for bar. See http://mywiki.wooledge.org/BashPitfalls nobody
fr33load3r 2014/04/11 12:27:46 94 &; is /say '&;' is always wrong. So is '& ;'. If you want to run things in the background in a compact one-liner, omit the ';' entirely and simply use '&' between commands. for f in ./*; do my_command "$f" & done - see http://mywiki.wooledge.org/BashPitfalls#pf21 nobody
izabera 2015/05/20 06:23:36 75 &> is /say &> is a bash-specific feature. «&>file» is equivalent to «>file 2>&1». There is no &>> until Bash4. Use «>>file 2>&1» instead. We recommend not using &> or &>> in scripts, because it will break some valid scripts (see !badredir), and is an unintuitive syntax for beginners. nobody
lhunath 2015/03/17 07:36:01 14 &>> is /say ''&>file'' is equivalent to ''>file 2>&1'' and is bash/ksh specific. In bash 4, there is also ''&>>file''. For portability, it is a good idea to just write it out fully. nobody
geirha 2010/06/22 09:08:08 243 ' is /say Single quotes (') cause everything between them to be taken literally by bash. If you want to embed a ' inside a '...', write it as the four characters, '\'': echo 'It'\''s a blast!' nobody
nDuff 2013/01/03 15:08:20 2 '' is /say '' is preferred for quoting code in #bash, because it has no semantic meaning for the shell; someone can copy-and-paste ''foo'' or the contents within, and the meaning to the shell is the same either way. nobody
e36freak 2013/01/02 08:17:08 92 ( is /call () nobody
prince_jammys 2010/12/28 17:22:18 358 (( is /say ((...)) is an arithmetic command, which returns an exit status of 0 if the expression is nonzero, or 1 if the expression is zero. Also used as a synonym for "let", if side effects (assignments) are needed. See <http://mywiki.wooledge.org/ArithmeticExpression>. nobody
e36freak 2013/01/02 08:16:55 45 () is /say Commands ran inside parenthesis are executed in a subshell. Useful for cd'ing into a directory without needing to figure out how to back out. See http://mywiki.wooledge.org/SubShell nobody
TheBonsai 2007/01/05 09:21:37 6 (.)(.)bang is /say http://homepages.cwi.nl/~aeb/std/shebang/ arora!~ashok@92.99.133.177 2018/05/04 14:23:23
\amethyst 2009/09/28 09:24:14 26 ** is /call globstar J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2018/01/03 11:24:42
yitz_ 2013/09/22 23:39:50 29 - is /say Tools generally consider an argument that begins with a - as an option. To pass a filename that begins with a -, prefix it with its path: rm ./-foo. Also: rm -- -foo (see !--). - alone can also mean stdin. \[!~qwename@unaffiliated/qwename 2017/09/11 22:50:57
e36freak 2011/09/14 13:04:39 148 -- is /say The special option -- means "end of options" to every POSIX command except echo and test. E.g., mv -- *.png /somedir # see also http://wiki.bash-hackers.org/dict/terms/end_of_options nobody
lhunath 2013/11/20 07:14:50 76 -9 is /say Do NOT use SIGKILL (kill -9) to terminate processes. All processes will terminate in response to the default SIGTERM. If they don't terminate instantly, that's because they're busy cleaning up. If you interrupt them, you break them. See http://stackoverflow.com/a/690631/347411 nobody
\amethyst 2009/10/01 08:45:20 13 -c is /say bash -c 'bash commands to execute' "$0" "$1" "$2" ... Since "$0" is typically unused, it is often set it to something arbitrary like _ jp!ayy@youlosethega.me 2017/11/28 00:09:25
lhunath 2011/10/24 04:09:40 70 -e is /call set-e nobody
e36freak 2012/03/16 10:34:49 9 -exec_ is /say find ... -exec sh -c 'blah "$1"' _ {} \; # When invoked with -c, any POSIX shell (including bash) uses the first positional parameter as "$0". '_' is a dummy value, so the passed filename becomes "$1". it could be anything. of course "$0" could be used, but when using -exec {} +, "$@" does not include "$0" nobody
yitz_ 2015/05/02 17:25:10 1 -f is /say Do you actually need that -f in that command? If there a reason you are using it? Or is it just there because of habit? Do you actually know what the -f does and do you even want it there? nobody
redduck666 2007/06/20 15:20:35 0 -nt is /say [ f1 -nt f2 ] True if file1 is newer (mtime) than file2 *or* if file1 exists and file2 does not. nobody
Riviera 2014/09/17 17:02:24 1 -r is /say Always use read with the -r option, otherwise backslashes are special. http://wiki.bash-hackers.org/commands/builtin/read#read_without_-r nobody
geirha 2014/08/23 05:53:55 2 -u is /call set-u nobody
izabera 2015/06/18 23:56:52 409 -x is /call set-x nobody
lhunath 2011/08/05 04:49:02 3 08 is /call august nobody
kwtm 2011/03/10 13:31:29 0 10q is /say Isn't anyone going to thank me for all my hard work? nobody
greycat 2014/08/08 12:51:10 22 1line is /call in1line nobody
i336_ 2015/01/04 18:26:27 6 256colormap is /say E=echo\ ;P=printf\ ;M=$'\e[0m';a(){ $P"\e[38;5;2${z}5;48;5;${1}m %4d $M" $1;};Z=$E$M;for i in 16 93 160;do ((r=(n=\!n)*2-1));for((x=0;x<6;x++,i+=r)) do for((j=0;L=(i+(R=(j/6?17-j:j))*6),z=(R%6>1?3:5),j<12;j++))do a $L;done;$E;done;done;z=5;for i in {0..23};do a $[i+232];((i==11))&&$Z;done;for i in {0..15};do ((i==8||\!i))&&$P'\n%*s' 12;a $i;done;$E nobody
TheBonsai 2010/04/19 15:01:58 76 2>&1 is /say Making sense of the copy descriptor operator: http://wiki.bash-hackers.org/scripting/copydescriptor nobody
lhunath 2014/02/21 07:36:42 8 2d is /say Bash doesn't support multi-dimensional arrays. Common substitutes are: 1. directories, eg. firstName=$(<~/.myscript/names/first/"$person"); 2. shared indexes, eg. name="${firstNames[person]} ${lastNames[person]}"; 3. merge in associative key, eg. declare -A names=( ["0-first"]=John ["0-last"]=Doe ["1-first"]=Jane ["1-last"]=Doe ); 4. primes, eg. names[i*29 + j*31]=value cousteau!~cousteau@unaffiliated/cousteau 2019/08/08 03:35:14
saveTheWorld 2012/12/19 07:45:52 2 2like is /say !1 but without backslash interpretation or stripping of leading/trailing spaces: while read -r; do my-command "$REPLY"; done <inputfile -- or for POSIX shell: while IFS= read -r line; do my-command "$line"; done <inputfile nobody
ivazquez 2007/09/03 02:48:42 0 2steps is /say Step 1: Figure out want you want to do. Step 2: Do it. The first step is the hard part. nobody
izabera 2015/03/13 11:14:40 6 42 is /say 6 times 9 nai!~naim@nai.im 2018/07/10 14:14:13
neurolysis 2011/10/18 08:48:17 2 80 is /say The 80-character limit is mostly pointless nowadays, except for in specific circumstances. <http://sprunge.us/cJTP> qwename!~qwename@unaffiliated/qwename 2017/09/02 23:40:09
ormaaj 2013/06/12 00:12:59 0 8601 is /say https://xkcd.com/1179/ nobody
[arx] 2014/04/28 15:55:22 9 99.9% is /say http://dilbert.com/fast/2008-05-08 nobody
yitz_ 2010/04/03 18:46:06 111 : is /say : is a builtin identical to the true builtin; they do nothing and have an exit status of 0 hostla!~user@194.135.152.59 2018/05/12 13:08:53
kwtm 2011/04/19 14:33:18 6 :) is /say This character sequence causes greycat to smile. Use with caution. nobody
koala_man 2014/08/28 17:20:29 11 :- is /say ${parameter:-word} Use Default Values. If parameter is unset or null, the expansion of word is substituted. nobody
koala_man 2014/08/08 17:01:23 3 := is /say ${parameter:=word} Assign Default Values. If parameter is unset or null, the expansion of word is assigned to parameter. nobody
yitz_ 2015/03/18 15:18:49 3 ; is /say The ";" character is used to separate between commands. It does the (almost) exact same thing that <ENTER> does in a shell or a newline in a script. nobody
geirha 2012/05/28 17:44:15 17 ;& is /call ;; nobody
geirha 2012/05/28 17:43:14 4 ;; is /say ;; signifies the end of a case list. ;& makes it fall through to the next list. ;;& makes it fall through to the next list if the pattern matches. nobody
geirha 2012/05/28 17:44:20 2 ;;& is /call ;; nobody
greycat 2009/03/02 07:15:30 55 < is /call redir nobody
greycat 2014/06/20 10:45:14 357 <( is /say Process Substitution: <(command) or >(command) is replaced by a FIFO or /dev/fd/* entry. Basically shorthand for setting up a named pipe. See <http://mywiki.wooledge.org/ProcessSubstitution>. Example: diff -u <(sort file1) <(sort file2) nobody
lhunath 2013/08/12 07:34:12 81 <() is /say Process Substitution >(command ...) or <(...) is replaced by a temporary filename. Writing or reading that file causes bytes to get piped to the command inside. Often used in combination with file redirection: cmd1 2> >(cmd2). See http://mywiki.wooledge.org/ProcessSubstitution http://mywiki.wooledge.org/BashFAQ/024 nobody
kojiro 2008/03/07 22:56:51 254 << is /say Here documents. cat <<EOF followed by several lines of text, followed by the literal string EOF on a new line, NOT indented. The portion between the EOFs is passed to the command as standard input. If 'EOF' is 'quoted', substitutions WON'T be done; otherwise they are. See <<- for the indented variety. nobody
geirha 2014/03/26 13:21:26 1 <<( is /call <<() nobody
geirha 2014/03/26 13:27:47 9 <<() is /say command < <(othercommand) # Same thing as ''othercommand | command'' but without subshelling 'command'. Uses file redirection (<) to redirect a file created by process substitution (<()). The space between < and <(..) is important to avoid ambiguity (is it a heredoc, is it a redirected PS?). nobody
llua 2015/03/13 19:30:21 71 <<- is /say Indented Here documents. Here documents started with <<- will ignore preceding tabs on each line, allowing you to indent your here documents nicely. Refer to << for general information on Here documents. Note that only TABs will work - spaces will not. Some editors can replace the TAB character with spaces, so be careful. nobody
lhunath 2008/12/10 02:33:57 278 <<< is /say Here strings. Similar to here documents: The word after <<< and a newline are passed to the standard input of a command. Syntax: ''command <<< "some sentence"'' (Like ''echo "some sentence" | command'', but without the overhead of the subshell) nai!~naim@monade.li 2019/05/03 12:39:05
e36freak 2012/03/30 22:24:50 19 <<<$( is /say <<<"$(command)" is pointless. It creates multiple temp files, requires the entire command to run before passing it to stdin, and removes trailing newlines from the command's output. Without the quotes, it's even worse; wordsplitting occurs and all whitespace gets squeezed to single spaces. Process substition was created for doing this efficiently and correctly. See http://mywiki.wooledge.org/ProcessSubstitution nobody
izabera 2015/08/30 08:27:34 2 <> is /say <>foo is the same as 0<>foo. To redirect both stdin and stdout to the same file, you need <>foo >&0 k!~krok@unaffiliated/krok 2018/03/10 08:43:19
VImtermute 2007/01/05 09:22:39 5 <|>bang is /say http://en.wikipedia.org/wiki/Shebang_%28Unix%29 nobody
greycat 2012/01/19 08:10:43 74 = is /call assignment aozt!~aozt@unaffiliated/aozt 2019/06/08 05:33:02
kurahaupo 2015/02/03 13:27:55 3 =$? is /say If you're using $? and not immediately assigning it to a variable, you're DoingItWrong. Either you're testing it immediately (in which case you don't need $? at all, see ![$? ) or else you're doing something else and then using it, in which case the value of $? will be changed before you use it. nobody
ferret 2010/09/21 14:56:39 46 == is /say The == operator is used to test numbers for equality in ((arithmetic expressions)). In BASH and ksh it is the same as = in [[ ]]. It should not be used in the POSIX / Bourne compatible test or [ ], as this will not work in other shells. nobody
yitz_ 2008/09/28 10:57:46 96 > is /say Use > to write redirect STDOUT to a file: ls > myFileList. See !redir nobody
greycat|home 2011/10/22 14:09:50 16 >& is /say >&word where word is a number or - is FD duplication or closing. A plain >& or >&word (word not numeric or -) is just like &> -- cmd >& file is equivalent to cmd >file 2>&1 but the former is bash- and csh-only. nobody
greycat 2009/03/02 07:26:56 73 >( is /call <( nobody
lhunath 2010/09/29 07:46:13 20 >() is /call >( nobody
yitz_ 2008/09/28 10:57:39 69 >> is /say Use >> to append to a file and prevent the original contents from being erased. See !redir nobody
igli 2008/01/16 21:29:03 7 >sed is /say Ask in #sed. nobody
izabera 2015/02/08 23:41:11 4 >| is /say Redirect stdout, like > but ignores noclobber (set -C). See http://wiki.bash-hackers.org/syntax/redirection nobody
lhunath 2014/06/13 07:56:27 19 ? is /say A question mark indicates a sentence is a question. When you see a sentence directed at you terminated with this symbol, somebody has asked you a question and is waiting for you to answer it. DeaDSouL!~deadsoul@94.29.129.54 2015/10/29 20:58:22
greycat 2011/04/21 06:31:06 66 @ is /say The positional parameters can be used like a named array, sort of. "$@" is just like "${array[@]}". PE works too: "${@:2}", or "${@:(-1)}", or "${@/#-/}", etc. However, you can't set or unset single positional params. dave0!~dave@230.059.dsl.syd.iprimus.net.au 2017/08/23 17:15:45
lhunath 2014/02/26 18:48:05 358 [ is /say [ or test is the POSIX test command. It can do simple tests on files and strings. In bash, you should use the more powerful [[ instead and ban [ for sake of consistency. [[ can do pattern matching, is faster and safer to use. http://mywiki.wooledge.org/BashGuide/TestsAndConditionals http://mywiki.wooledge.org/BashFAQ/031 nobody
lhunath 2014/06/26 11:46:44 145 [$? is /say Don't do this: ``mycommand; if [ $? -eq 0 ]'' -- You're running the [ command and checking its exit code to test whether "mycommand"'s exit code is 0. That's a pointless operation, test mycommand directly: ``if mycommand'' nobody
ormaaj 2012/03/06 21:12:47 30 [-a is /say The classic test command's -a and -o operators, as well as controlling precedence using ( and ) cause many problems and ambiguities, are not portable, and are unsafe with user input. They are all marked as obsolescent by POSIX. If coding for Bash, Ksh, or Zsh, [[ is *highly* preferred over [. See: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html#tag_20_128_16 nobody
ormaaj 2012/09/07 17:50:50 8 [-o is /call [-a nobody
cthuluh 2010/11/09 03:42:58 2 [: is /say Character classes like [a-z] or [A-Z0-9] may behave strangely in non-POSIX locales. If you want your script to work locale-wise, use [[:lower:]] or [[:upper:][:digit:]] instead. Remember to always quote your character classes, as they may be expanded by the shell as file globs. See also !locale nobody
redduck666 2007/06/26 06:50:01 2 [< is /say to get STRING comparison you must escape the < in [ a \< b ] otherwise "< b" is intrepreted as a redirection from the file "b". There is no problem with [[ a < b ]]. The same applies to [ a \> b ] nobody
greycat 2010/05/05 08:13:23 753 [[ is /say [[ is a bash keyword similar to (but more powerful than) the [ command. See <http://mywiki.wooledge.org/BashFAQ/031> and <http://mywiki.wooledge.org/BashGuide/TestsAndConditionals>. Unless you're writing for POSIX sh, we recommend [[. glacial!~glacial@unaffiliated/glacial 2017/11/05 13:14:36
lhunath 2012/03/28 00:49:04 13 [[$? is /call [$? nobody
lhunath 2009/06/03 23:21:39 3 [vs[[ is /say '[', also known as 'test' is the POSIX variant of [[. [ does NOT support ==, =~, &&, ||, glob pattern matching; unquoted > and < will do file redirection instead of comparison, etc. See http://mywiki.wooledge.org/BashFAQ/031 nobody
prince_jammys 2008/07/24 13:37:40 4 \0 is /say ASCII zero, the null byte, aka 'NUL' is the best delimiter for lists of strings (eg. file names). However, there isn't much you can do with it in portable scripts. Bash can read null-byte delimited input with "while IFS= read -d ''; do ... ". Bash cannot store or pass a null byte as parameter. *Unportable* versions of the following utilities can work with NULs: find, sort, xargs, and sed. nobody
juanmabc 2013/12/20 04:49:32 0 \< is /say The symbols \< and \> respectively match the empty string at the beginning and end of a word. nobody
juanmabc 2013/12/20 04:49:49 3 \<\> is /say The symbols \< and \> respectively match the empty string at the beginning and end of a word. qwename!~qwename@unaffiliated/qwename 2017/07/15 01:34:48
juanmabc 2013/12/20 04:49:38 0 \> is /say The symbols \< and \> respectively match the empty string at the beginning and end of a word. nobody
geirha 2011/10/16 05:05:24 23 \r is /call cr nobody
greycat 2011/03/22 10:47:37 1 \w is /call prompt nobody
greycat 2009/03/02 07:28:19 2 ] is /call [ nobody
greycat 2009/03/02 07:28:31 3 ]] is /call [[ nobody
lhunath 2011/02/24 00:57:28 1 ^$() is /say You do not need $() to "run stuff". $(command); $(command); $(command) is just plain WRONG. Bash runs every line as a command. $() is ONLY used to capture the OUTPUT of the command and INLINE it (expand it in-place). Use command; command; command instead. nobody
greycat 2010/11/17 13:41:36 3 ^c is /say Bash 4.0 started echoing ^C when you press SIGINT in editing mode, which is very annoying. To revert to previous behavior in bash 4.1: echo 'set echo-control-characters off' >> ~/.inputrc # (No known way to fix it in bash 4.0.) muffindrake!~muffindra@unaffiliated/muffindrake 2017/07/17 07:23:31
BlastHardcheese 2015/02/23 18:33:01 2 ^m is /call cr qwename!~qwename@unaffiliated/qwename 2017/07/15 00:58:28
ormaaj 2014/08/13 16:00:06 42 _ is /say The parameter _ is often used as a dummy variable in read commands to discard unwanted fields. It should not be used this way in portable scripts due to known conflicting usages in several common shells. See also: $_ nobody
TheBonsai 2007/08/28 14:06:54 1 _matrix_ is /say Follow the white rabbit... nobody
greycat 2011/06/29 12:42:18 746 ` is /say The backquote (`) is used in the old-style command substitution, e.g. foo=`command`. The foo=$(command) syntax is recommended instead. Backslash handling inside $() is less surprising, and $() is easier to nest. See http://mywiki.wooledge.org/BashFAQ/082 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/06 09:52:05
pgas 2010/03/30 07:29:19 23 `` is /call ` pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/06 09:52:05
lhunath 2013/10/10 12:20:31 16 `echo is /call $(echo [\!~qwename@unaffiliated/qwename 2017/11/28 07:18:52
e36freak 2012/06/06 13:43:49 13 `irc is /say DO NOT use back ticks as "irc markup". They are _syntax_, and using them as such can do nothing except lead to confusion nobody
bronze 2010/04/10 10:42:50 4 aarrays is /say http://bash-hackers.org/wiki/doku.php/bash4#associative_arrays prev!~prev@unaffiliated/prev 2017/03/10 12:48:20
TheBonsai 2010/05/17 12:54:17 3 abs is /say The infamous "Advanced" Bash Scripting Guide should be avoided unless you know how to filter out the junk. It will teach you to write bugs, not scripts. In that light, the BashGuide was written: http://mywiki.wooledge.org/BashGuide jim!~jim@unaffiliated/jim 2015/10/24 13:18:02
izabera 2014/12/12 16:15:57 10 abspath is /say # abspath()(p=$1/; [[ $p = /* ]] || p=$PWD/$p; while [[ $p = */@(..|.|)/* ]]; do p=${p//\/.\//\/} p=${p//\/\//\/} p=${p/#\/..\//\/} p=${p/\/+([!\/])\/..\//\/}; done; [[ $p = / ]] || p=${p%/}; printf %s\\n "$p"); abspath a/b//c/./d/../e koisoke!xef4@epilogue.org 2018/02/02 17:04:06
TheBonsai 2009/02/22 11:22:15 2 ad is /say >>>Your ad here!<<< nobody
greycat 2008/06/12 10:37:10 9 adu is /say adu(1) - a date utility - source code at http://twkm.freeshell.org/adu.tar.Z nobody
igli 2007/06/07 20:46:20 2 advanced is /say You are? Good then could you fix the bugs in bash? You know the list of course, since you *are* advanced. Thanks for your help. Oh and edit the wiki! :D nobody
e36freak 2012/03/22 09:03:41 17 afk is /call away zub1n!~zub1n@unaffiliated/zub1n 2017/02/12 13:15:47
strayPuppy 2015/05/10 13:21:08 3 ah is /say !ah nobody
lhunath 2015/03/31 10:23:33 353 alias is /say An alias is a small in-line command name text replacement. They are not commands and cannot take arguments. Only use aliases for expanding things like default command switches: alias l='ls -l'. For everything else, use a function instead: del() { mv -i "$@" ~/.trash; } nobody
greycat 2010/07/27 05:48:14 22 aliases is /say Aliases suck. They don't work in scripts. They can't take arguments. They have special evil magical powers that break all expectations. See http://mywiki.wooledge.org/BashFAQ/080 for starters. nobody
izabera 2015/05/18 15:48:20 6 alphabet is /say 3# for _ in $(echo <(: {1..26})); do printf \\"$(printf %o $((128-${_##*/})))"; done; echo nobody
kurahaupo 2013/11/07 21:21:44 0 altgr is /say In X-windows, AltGr is a notional key which can be bound to a regular key on a keyboard, so you can use that key somewhat like a "shift" key to access additional symbols such as ¬ ¥ ÷ ¿ ½ €. Usually it is bound to one of the "windows" or "alt" keys. nobody
greycat 2006/08/21 13:01:01 1 ambiguity is /say Ambiguity is bad! It makes bad... stuff... happen! Badly! nobody
savetheWorld 2008/02/28 07:02:04 9 anal is /say "older, or emotionally damaged brains that have trouble dealing with the evolving nature of language and communication will condemn new constructs as evidence of incompetence. All it really means is they are slowly fading from relevance." banana!~banandana@cassini.whatbox.ca 2019/04/30 17:13:08
r00t 2007/06/05 23:37:09 3 anarchy is /say "Anarchists are those who advocate the absence of the state, arguing that __common sense__ would allow for people to come together in agreement to form a functional society" -- http://en.wikipedia.org/wiki/Anarchy#Anarchism oldlaptop!~quassel@45.63.78.126 2019/06/03 17:13:25
yitz_ 2010/09/16 18:47:21 3 and is /say Try faq foo and bar aka faq 79 nobody
greycat 2007/12/12 05:49:46 1 another_way is /say Yes, there's always another way. Write a script that produces random output and performs random file deletions/creations/renamings, and run it repeatedly until it produces the desired outcome. nobody
greycat 2009/03/02 07:15:55 16 ansi is /call vt100 user51_!~user51@77.124.3.96 2018/06/23 10:05:28
lhunath 2012/02/22 00:48:23 32 answer is /say If we're asking you questions, it's not to intentionally annoy or delay you. We're trying to find the best answer to your problem. Want a good solution? Patiently answer each of them to the best of your ability. nitrix!~nitrix@haskell/developer/nitrix 2019/08/28 18:49:55
igli 2007/07/05 16:50:25 30 answers2 is /say http://mikeash.com/getting_answers.html "Most of the time you'll be talking to people who know more about the subject at hand than you do (that's why you came to them for help in the first place, remember). As such, it pays to at least entertain the possibility that they know what they're talking about." Read the link and bear in mind we deal with that shit day in, day out. nobody
kojiro 2009/12/14 13:13:38 3 applause is /say zzZZzz. what who huh? oh... Yay. zzZZzz nobody
Samus_ 2008/07/28 11:43:56 5 arch is /say Archlinux is usually taken as a l33t distro but the truth is that anyone who manages a rcfile is l33t-enough to deal with it :) nobody
greycat 2010/08/04 05:55:35 1 arg: is /say "(arg: N)" (N is any number) is what you get in emacs mode when you press ESC and then type a number. The NEXT thing you press after the number will be repeated N times. Silly emacs. nobody
greycat 2013/05/30 13:35:12 5 arg_max is /call argmax nobody
cdown 2013/03/01 23:42:17 3 argmax is /say The kernel constant ARG_MAX defines the maximum number of bytes that can be passed to exec(3). On Linux since libc 2.8, this value is determined dynamically based upon the system, and is not hardcoded. # http://www.in-ulm.de/~mascheck/various/argmax/ nobody
lhunath 2010/07/29 15:45:18 212 args is /call arguments pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/03 17:40:43
lhunath 2010/07/29 15:45:09 148 arguments is /say Understanding Arguments and Word Splitting: http://mywiki.wooledge.org/Arguments pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/03 17:40:43
lhunath 2008/05/27 07:04:44 70 arithmetic is /say Add 7 to a variable: let a+=7; ((a+=7)); a=$((a+7)); See http://wooledge.org/mywiki/ArithmeticExpression graff!~graff@unaffiliated/graff 2017/09/07 08:50:17
koala_man 2012/03/27 06:06:28 12 arithmetics is /call math nobody
ormaaj 2012/04/03 19:40:16 386 array is /say An array maps numbers to strings. Bash 4 also has associative arrays (maps strings to strings). http://mywiki.wooledge.org/BashSheet#Arrays http://mywiki.wooledge.org/BashFAQ/005 http://wiki.bash-hackers.org/syntax/arrays nai!~naim@monade.li 2019/04/08 10:55:20
e36freak 2012/01/17 14:14:32 320 arrays is /call array nobody
ormaaj 2013/02/17 23:14:58 7 arrorder is /say Indexed array assignment evaluation order: https://gist.github.com/ormaaj/4942297#file-output nobody
savetheWorld 2008/06/21 20:18:38 9 ascii is /say http://mywiki.wooledge.org/BashFAQ/071 -- How do I convert an ASCII character to its decimal (or hexadecimal) value and back? qwename!~qwename@108.175.235.8 2016/12/12 21:58:08 esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 09:03:25
ormaaj 2012/12/15 22:45:04 7 ash is /say "Ash" is ambiguous. It is a name shared by a huge family of Bourne-like shells. See: http://www.in-ulm.de/~mascheck/various/ash/ . Currently maintained examples include Dash and Busybox's ash (go to #uclibc for the latter). nobody
geirha 2012/01/13 06:22:33 465 ask is /say If you have a question, please just ask it. Don't look for topic experts. Don't ask to ask. Don't PM! Don't ask if people are awake, or in the mood to help. Just ask the question straight out, and be patient waiting for an answer. http://mywiki.wooledge.org/NetEtiquette nobody
Riviera 2014/09/20 04:44:17 3 ask2 is /say http://i.qkme.me/3qt516.jpg camthesaxman!~chatzilla@107-205-135-122.lightspeed.nworla.sbcglobal.net 2016/11/27 22:54:18
greycat 2011/12/21 12:09:51 210 assignment is /say To assign to a variable, use varname=value . Do not include spaces around the '=', and do not write $varname on the left hand side. aozt!~aozt@unaffiliated/aozt 2019/06/08 05:33:02
lhunath 2010/01/25 06:50:09 43 assoc is /say Associative Arrays map strings to strings (Bash 4): http://mywiki.wooledge.org/BashGuide/Arrays#Associative_Arrays nobody
kojiro 2007/06/05 11:39:13 2 assume is /say "Assume makes an 'ass' of 'u' and 'me'" nobody
greycat 2010/01/06 09:34:36 4 attach is /say To attach files to email in a script, use mutt or nail. If you are on a piece of shit legacy machine and have to use mail/mailx, see http://www.shelldorado.com/articles/mailattachments.html mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/04/26 19:38:14
greycat 2010/09/02 06:36:51 204 august is /say August is the month when all your scripts break because you placed $(date +%m) in a variable and tried to do arithmetic with it, without removing the leading zeros. 08 is considered octal. Use $((10#$month)) to force decimal, or strip the zero. glacial!~glacial@unaffiliated/glacial 2017/11/04 11:16:49
greycat 2011/04/12 13:31:11 5 auth is /say Authentication is ENTIRELY a function of the application or system to which you are authenticating. THERE IS NO GENERAL WORKAROUND. If you are authenticating to MySQL, ask #mysql. If you want to automate ssh, see http://mywiki.wooledge.org/BashFAQ/069 . If you want to set users' passwords, see http://mywiki.wooledge.org/BashFAQ/078 . nobody
e36freak 2012/01/03 12:16:49 2 authentication is /call auth nobody
cdown 2013/02/04 22:28:05 0 autocd is /say autocd moves to directories automatically without having to prepend them with ''cd'', it's available from bash4+. nobody
neurolysis 2011/08/23 00:37:55 1 autoexpect is /call expect nobody
ormaaj 2013/01/28 19:33:39 0 autoload is /say http://git.savannah.gnu.org/cgit/bash.git/tree/examples/functions/autoload.v3?h=devel nobody
lhunath 2008/02/20 01:06:27 28 away is /say We don't care about every trip to the potty that you make. Do not announce your aways publically. See http://sackheads.org/~bnaylor/spew/away_msgs.html nanozz!nanoz@gateway/vpn/protonvpn/nanoz 2019/08/20 21:14:39
yitz_ 2009/09/02 08:28:49 1 awk is /say Check the topic of #awk and also http://www.grymoire.com/Unix/Awk.html -- awk questions belong to #awk. Note: If you are piping through more than one (grep|sed|awk), you're likely doing it wrong. nobody
yitz_ 2014/04/09 23:36:50 0 awk-v is /say The correct way to get a shell variable into awk is with awk's -v flag, not by putting the $var into the awk code. var=foo; awk -v name="$var" 'BEGIN{print "Hello " name}' nobody
lhunath 2012/09/19 13:21:49 4 awkquote is /say To inject data into an awk script, pass the option -v "var=$data" and use var inside your awk code. nobody
greycat 2011/07/05 08:50:22 2 awkvar is /call awkvars nobody
e36freak 2011/06/28 07:51:51 0 awkvars is /say Set an awk variable: awk ... -v foo="$bar" ... '$0 ~ foo' nobody
savetheWorld 2007/07/31 15:31:01 44 b0 is /say The questioner will never tell you what they are really doing the first time they ask. nobody
savetheWorld 2007/04/17 18:07:00 3 b1 is /say bashphorism 1: the questioner's first description of the problem/question will be misleading. qwename!~qwename@unaffiliated/qwename 2017/07/13 22:08:57
greycat 2009/03/02 07:29:27 96 b10 is /call b1 nobody
yitz_ 2008/07/10 08:32:13 68 b11 is /say Please apply (( % 10 )) to the bashphorism value. qwename!~qwename@unaffiliated/qwename 2017/07/13 22:08:25
kojiro 2009/12/08 13:07:58 69 b12 is /say all logic is deniable; however, some logic will *plonk* you if you deny it. nobody
kojiro 2010/07/26 12:39:39 65 b13 is /say everyone ignores greycat when he is right. When he is wrong, it is !b1. nobody
kojiro 2010/07/26 12:43:30 74 b14 is /say the newbie doesn't actually know what he's asking. If he did, he wouldn't need to ask. nobody
kojiro 2010/09/29 11:52:35 73 b15 is /say The more advanced you are, the more likely you are to be overcomplicating it. nobody
sjohnson 2014/01/03 12:31:59 70 b16 is /say The more of a beginner you are, the more likely you are overcomplicating it. nobody
kojiro 2010/09/30 09:18:50 75 b17 is /say A newbie comes to #bash to get his script confirmed. He leaves disappointed. nobody
greycat 2010/11/23 08:34:56 78 b18 is /say The newbie will not accept the answer you give, no matter how right it is. nobody
greycat 2011/01/28 11:45:05 80 b19 is /say The newbie is a bloody loon. nobody
greycat 2009/04/22 07:00:05 394 b2 is /say bashphorism 2: The questioner will keep changing the question until it drives the helpers in the channel insane. alyptik!ayy@youlosethega.me 2017/08/28 01:39:03
greycat 2011/05/11 08:46:25 110 b20 is /say The newbie will always have some excuse for doing it wrong. nobody
greycat 2012/08/13 15:06:25 83 b21 is /say If^H^HWhen the newbie's question is ambiguous, the proper interpretation will be whichever one makes the problem the hardest to solve. nobody
sjohnson 2013/09/17 13:01:57 45 b22 is /say The newcomer will abuse the bot's factoid triggers for their own entertainment until someone gets annoyed enough to ask them to message it privately instead. nobody
greycat 2013/09/17 13:01:59 43 b23 is /say Everyone is a newcomer. nobody
sjohnson 2013/09/20 12:48:40 65 b24 is /say The newcomer will address greybot as if it were human. nobody
greycat 2014/08/08 12:36:11 30 b25 is /say The newbie won't accept any answer that uses practical or standard tools. nobody
greycat 2014/08/08 12:36:27 23 b26 is /say The newbie will not TELL you about this restriction until you have wasted half an hour. nobody
emg 2014/09/05 17:11:19 26 b27 is /say The newbie will lie. nobody
greycat 2015/04/30 10:36:08 10 b28 is /say When the full horror of the newbie's true goal is revealed, the newbie will try to restate the goal to trick you into answering. Newbies are stupid. nobody
greycat 2015/06/03 11:47:43 21 b29 is /say It's always git. Or python virtualenv. Or docker. One of those pieces of shit. ALWAYS. resh!~resh@217.118.64.53 2016/12/27 04:41:08
kojiro 2007/06/21 07:46:42 220 b3 is /say "Offtopicness will continue until someone asks a bash question that falls under bashphorisms 1 and/or 2, and greycat gets pissed off." nobody
greycat 2015/05/28 10:31:27 14 b30 is /say They won't show you the homework assignment. That would make it too easy. nobody
greycat 2015/06/19 10:07:55 9 b31 is /say Your teacher is a fucking idiot. nobody
greycat 2015/08/20 11:43:42 7 b32 is /say The more horrifyingly wrong a proposed solution is, the more likely it will be used. nobody
greycat 2015/08/28 14:07:13 6 b33 is /say The newbie cannot explain what he is doing, or why. He will show you incomprehensible, nonworking code instead. What? You can't read his mind?! nobody
savetheWorld 2007/12/19 09:17:19 198 b4 is /say Bashphorism 4:The questioner will not read and apply the answers he is given but will instead continue to practice b1 and b2 acerbic!~acerbic@2602:30a:2cf9:4710:f27b:cbff:fe81:c6b3 2017/08/21 17:16:18
savetheWorld 2007/12/31 07:31:21 176 b5 is /say "The ignorant will continually mis-educate the other noobies" nobody
kojiro 2009/05/08 11:59:24 221 b6 is /say When given a choice of solutions, the newbie will always choose the wrong one. cousteau!869356f3@gateway/web/freenode/ip.134.147.86.243 2016/08/17 06:49:03
kojiro 2009/05/08 12:03:15 129 b7 is /say The newbie will always find a reason to say, "It doesn't work." nobody
kojiro 2009/05/08 12:06:32 111 b8 is /say If you don't know to whom the bashphorism's referring, it's you. emg!~emg@74-123-189-254.static.wiline.com 2016/12/06 14:49:15
bronze 2009/11/23 10:33:51 2 b85397236519 is /say b85397236519 has been replaced by q2 nobody
greycat 2012/05/11 12:18:55 189 b9 is /say All examples given by the questioner will be broken, misleading, wrong, incomplete, and/or not representative of the actual question. nobody
bronze 2009/10/01 08:04:14 3 b_zed is /say Bashphorism OMEGA Some people just have to be killed. qwename!~qwename@unaffiliated/qwename 2017/08/21 00:07:49
greycat 2010/07/30 13:13:21 9 back is /call away nanozz!nanoz@gateway/vpn/protonvpn/nanoz 2019/08/20 21:14:39
juanmabc 2013/06/30 15:49:04 1 backlog is /say Something happens while you code, read the backlog. nobody
ormaaj 2012/01/07 21:27:16 2 backtrace is /say http://wiki.bash-hackers.org/commands/builtin/caller nobody
redondos 2007/06/07 19:16:33 13 backup is /say Just restore from your backups. nobody
bronze 2010/01/25 10:20:30 11 bad is /say 'tac < file | tail | tac # TAOMBWTDI "there's always one more bad way to do it." ' meth!~meth@unaffiliated/meth 2018/08/01 08:38:56
ormaaj 2012/01/31 02:49:48 6 badglob is /say http://www.vidarholen.net/contents/comics/comic03.png nobody
sikilpaake 2012/10/27 02:59:12 8 badgreybotbad is /say "i have amnesia" nobody
HawkI 2011/09/18 08:47:24 3 badidea is /say Its a bad idea to add code to a program that increases the size or complexity of the code but adds no functionality. Readability or "remember-ability" of longer command line options -might- qualify as additional functionality. Others may feel it doesn't. nobody
bronze_0_1 2007/02/01 07:34:00 2 badq is /say Your question is either using the wrong vocabulary or its form is confusing. We can't understand it well enough to help you. Can you rephrase the question and perhaps give more information about the scope and goal of what you are doing? Also try to use bash/*NIX specific names for things nobody
ormaaj 2013/07/14 21:50:56 34 badredir is /say # for sh in {{b,d}a,k}sh; do printf '%-5s %s\n' "${sh}:" "$("$sh" -s </dev/fd/0)"; done <<<'{ echo foo >/dev/null &>/dev/fd/3 echo bar; } 3>&1' nobody
ormaaj 2013/05/30 20:40:04 8 badref is /say Be careful when using functions that use namerefs (typeset -n): https://gist.github.com/ormaaj/5682807 izabera!~izabera@unaffiliated/izabera 2019/07/26 15:51:48
ormaaj 2013/06/13 22:29:34 8 badutils is /say Programs you shouldn't use: http://mywiki.wooledge.org/BadUtils nobody
syntux 2007/07/21 04:08:36 1 banner is /say ? nobody
selk 2014/02/26 16:25:10 277 basename is /say basename(1) can strip the directory and extension from a path (directory/subdirectory/filename.extension -> filename.extension or filename). A parameter expansion can do it cleaner and *much* faster: "${path##*/}", "${path%.*}", at the cost of missing corner cases like path=/ nobody
kojiro 2007/08/21 10:05:13 1 bash is /say The Bourne-Again Shell. Read the channel topic or type /msg greybot links for lots of links. nobody
lhunath 2013/01/15 06:53:03 2 bash-sh is /say bash-code is not sh-code. If you want to limit yourself to POSIX-sh, set your hashbang to #!/bin/sh. If you want to use bash extensions, set it to #!/bin/bash or #!/usr/bin/env bash. nobody
redondos 2007/05/21 14:04:45 16 bash.org is /say This #bash IRC channel is about the bash Unix shell, and is not affiliated with bash.org's quote database (QDB). Please don't fill our backlogs with nonsensical remarks. nobody
TheBonsai 2009/01/16 04:29:51 5 bash4 is /say Bash v4, a rough overview: http://bash-hackers.org/wiki/doku.php/bash4 nobody
lhunath 2013/03/30 09:38:32 2 bash4osx is /say To install an up-to-date bash on OS X: ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)" && brew install bash && sudo tee -a /etc/shells <<< '/usr/local/bin/bash' && chsh -s /usr/local/bin/bash nobody
yitz_ 2009/09/30 20:04:59 2 bashbug is /say bashbug is a shell script to help the user compose and mail bug reports concerning bash in a standard format. nobody
kerframil 2014/09/29 11:56:30 5 bashcheck is /say https://raw.githubusercontent.com/hannob/bashcheck/master/bashcheck nobody
lhunath 2015/03/13 11:46:50 0 bashcomplib is /say Utilities for writing safe bash completion functions: http://to.lhunath.com/bashcomplib nobody
\amethyst 2008/12/10 13:27:48 15 bashdb is /say The Bash Debugger Project is a gdb-style debugger for bash, available from http://bashdb.sourceforge.net/ nobody
greycat 2010/06/28 11:33:17 26 bashfaq is /say http://mywiki.wooledge.org/BashFAQ qwename!~qwename@unaffiliated/qwename 2017/06/23 03:49:51
greycat 2010/06/28 11:32:46 1 bashguide is /call guide nobody
lhunath 2012/01/21 03:36:08 261 bashis is /say Bash is a shell. That's a program which can do simple math, logic, I/O and run other programs. It's NOT a terminal, it's not a kernel, it doesn't manage the system's authentication or environment, it's not your OS and it's not X, KDE or Gnome. nobody
cthuluh 2011/03/04 12:38:21 8 bashish is /say Learning bash / writing bash scripts is easier when not on drugs, so please don't come here while smoking joints nobody
greycat 2009/10/16 12:15:45 90 bashism is /say http://mywiki.wooledge.org/Bashism for a (partial!) list of bash-specific features, and how to emulate them in other shells nobody
lhunath 2012/09/07 05:28:14 75 bashlib is /say Convenience functions for use in bash scripts: http://to.lhunath.com/bashlib nobody
greycat 2009/03/02 07:29:41 18 bashphorism1 is /call b1 nobody
greycat 2009/03/02 07:29:50 18 bashphorism2 is /call b2 nobody
bronze_0_1 2007/04/03 07:39:14 14 bashphorism3 is /say There is no bashphorism 3. see corollary1.1 nobody
llua 2014/12/01 22:10:23 0 bashphorisms is /say http://wiki.bash-hackers.org/misc/bashphorisms nobody
lhunath 2012/03/02 09:45:30 23 bashquote is /say Prepare literal data for injection into bash code: printf %q "$data". Eg. ssh host bash <<< "$(printf 'rm %q' "$localvar")" nobody
e36freak 2011/04/26 13:47:28 53 bashrc is /call dotfiles nobody
igli 2007/08/26 21:17:30 0 basic is /say Read the URL, then think about it some. Try some of the code out, and then ask when you hit an error. ;) nobody
TheBonsai 2008/02/04 12:22:55 10 basics is /say Some Basics: http://bash-hackers.org/wiki/doku.php/scripting/basics Codfection!~Codfectio@unaffiliated/codfection 2016/07/27 08:50:57
greycat 2010/07/15 08:07:53 4 batch is /say If by "batch" you mean Microsoft's COMMAND.COM or CMD.EXE shells, they are not supported here. Try ##windows. nobody
ximba 2007/07/17 01:13:21 0 baz is /say bar nobody
Stummi 2013/09/23 05:11:10 12 bc is /say bash can do simple calculations itself: x=3; y=5; sum=$((x+y)) nobody
bronze_|| 2006/10/06 07:49:48 0 bcft is /say bronze_|| can't type nobody
kojiro 2009/09/03 10:28:41 1 bdfl is /say http://en.wikipedia.org/wiki/Benevolent_Dictator_For_Life protege!~shynoob@182.59.209.11 2017/02/05 00:52:12
ormaaj 2014/11/21 13:25:55 2 be is /call { nobody
neurolysis 2011/09/09 17:19:16 2 beg is /say We are not your personal support. We are not here to write YOUR scripts for you. We are not here to weed out the bugs in YOUR program. If you can't figure it out without us holding your hand all the way, don't expect us to help. mujjingun!uid228218@gateway/web/irccloud.com/x-uid228218 2017/12/12 03:19:08
lhunath 2011/02/07 01:24:10 0 bench is /say http://mywiki.wooledge.org/BashBenchmark nobody
ormaaj 2012/06/30 17:28:41 9 benchmark is /call benchmarks nobody
ormaaj 2012/06/30 17:28:33 1 benchmarks is /say http://mywiki.wooledge.org/BashBenchmark nobody
TheBonsai 2009/04/21 21:36:29 3 bh is /say Bash Hackers Wiki -- http://bash-hackers.org/wiki nobody
pancakes9 2014/05/18 21:42:04 3 bingo is /say bongo mujjingun!uid228218@gateway/web/irccloud.com/x-uid228218 2017/12/12 03:19:20
bronze 2009/07/07 07:42:04 1 bint is /say Bint is "Bash lint", a conceptual tool which identifies certain types of scripting techniques that are considered bad or inefficient. It typically uses a list of rexes to identify problems, example grep "cat" < scriptfile will show all instances of cat in a file which are usually not needed in a script. E0D!5ffa58f0@gateway/web/freenode/ip.95.250.88.240 2016/11/20 19:05:06
ormaaj 2013/06/02 15:10:50 11 birandom is /say # 3>&1 2>/dev/null <$(echo $RANDOM >&3) nobody
ivazquez 2008/07/26 17:29:23 2 bitwise is /say http://en.wikipedia.org/wiki/Bitwise_operation nobody
Riviera 2012/03/07 05:18:44 3 blankmyth is /say http://www.in-ulm.de/~mascheck/various/shebang/#blankrequired nobody
e36freak 2013/07/01 09:26:18 27 bobby is /say http://xkcd.com/327/ ## http://mywiki.wooledge.org/BashWeaknesses ## Don't write database code in bash. Use perl, python, etc; any language with an appropriate library nobody
e36freak 2011/03/06 18:41:50 6 bobbytables is /say http://xkcd.com/327/ nobody
kojiro 2010/08/02 07:46:13 8 bom is /say The unicode byte-order-mark determines the endianness of UTF-N files where N>8. http://unicode.org/faq/utf_bom.html#BOM shadowchaser!~Shadowcha@liox.eu 2018/02/27 08:38:19
sjohnson 2013/11/29 11:58:51 11 book is /call books nobody
e36freak 2011/07/30 15:51:30 3 books is /say Most of the published shell/bash books are relatively poor. They may have a few gems here and there, but they're few and far between. Try the BashGuide instead: http://mywiki.wooledge.org/BashGuide cippaciong!~cippacion@host133-146-dynamic.244-95-r.retail.telecomitalia.it 2017/11/09 02:08:40
greycat 2011/09/15 13:25:23 89 bool is /say Bash doesn't have boolean variables, but you can shanghai integers for this purpose, just like in C. first=1; errors=0; if ((first)); then ...; if ((! errors)); then ...; ((debug)) && log stuff dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2018/03/12 14:08:34
geirha 2012/07/12 06:51:16 30 boolean is /call bool dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/11/18 22:09:43
greycat 2010/09/14 13:50:55 92 bot is /say I know I am, but what are you? nobody
yitz_ 2015/03/13 20:42:10 6 bots is /say greybot supplies canned responses, factoids and FAQ links with "!". evalbot/shbot provide a command evaluation via "#" (and varieties). checkbot provides a syntax checker with the !check command. cengiz_io!sid223191@gateway/web/irccloud.com/x-sid223191 2018/03/05 17:56:16
sjohnson 2012/11/13 14:42:01 20 botspam is /say Instead of flooding the channel with unimportant bot evals, you can play with the bot at #evalbot, or /msg it privately. nobody
\amethyst 2009/05/29 22:26:36 11 bourne is /say The Bourne shell is the 'traditional' Unix shell from Seventh Edition (1979), now made obsolete by the Posix sh. Bourne shell is still present as /bin/sh or /usr/old/bin/sh on many Unix systems. See also 'heirloom' and http://www.in-ulm.de/~mascheck/bourne/ mujjingun!uid228218@gateway/web/irccloud.com/x-uid228218 2017/12/12 03:21:24
Jetchisel 2015/04/01 17:03:08 4 boxme is /say # boxme() { width=72; printf -v line "%*s" "$width"; printf -v center "%s %$(( $(( width / 2 )) + $(( ${#1} / 2 )) ))s %$(( width - ( $(( ( width - 1 ) / 2 )) + $(( ${#1} / 2 )) ) ))s" \# "$1" \#; printf '%s\n' "# ${line// /=} #" "$center" "# ${line// /=} #"; }; boxme "I Love you 2 don't you know!" nobody
lhunath 2011/01/06 00:41:55 5 bp is /say There are many solutions to each problem. For the simplest, fastest and best answer, explain the *bigger picture* in unambiguous English (forget your code). cousteau!869356f3@gateway/web/freenode/ip.134.147.86.243 2016/08/17 06:49:12
izabera 2014/12/23 13:22:53 2 bpod is /say Big Pipeline Of Death: if your command looks like this: command | grep | sed | awk | tr | ... YOU'RE DOING IT WRONG qwename!~qwename@unaffiliated/qwename 2017/08/09 05:43:44
revdiablo 2005/12/25 19:44:29 0 bqs is /say Bot Query Syndrome -- If you see this, you're talking to the bot too much. nobody
ormaaj 2012/05/25 23:30:06 31 brace is /call { prev!~prev@unaffiliated/prev 2017/04/02 04:27:51
kojiro 2009/02/01 11:53:50 12 braces is /say Braces around variable names do not take the place of quotes, and are unnecessary unless the var name would otherwise be misread, eg "${size}Kb", or you are using arrays or parameter expansion like "${foo%.mp3}". mv ${file} ${newFile} is *unsafe* it should be mv "${file}" "${newFile}" or, more simply, mv "$file" "$newFile" nobody
geirha 2011/10/24 12:28:13 5 bre is /say Basic Regular Expressions. See http://mywiki.wooledge.org/RegularExpression or (POSIX) http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html#tag_09_03 nobody
bronze 2009/10/27 09:19:13 0 brm is /say The GNU Bash refernce manual is available here: http://tiswww.case.edu/php/chet/bash/bashref.html (bash maintainer home dirs), and here: http://www.gnu.org/software/bash/manual/bashref.html (GNU web site). The first one has a slightly nicer format. These are not man pages. nobody
kojiro 2010/09/24 06:44:14 8 broken is /say Your broken code doesn't actually tell us what you want to do. Please describe your input and your desired output in English, not code. oldlaptop!~quassel@45.63.78.126 2019/05/04 16:54:34
yitz_ 2014/10/08 23:07:22 3 broken2 is /say "Hey. Here's code that is broken and doesn't do what I want. Now, can you guess what it is that I do want? Hint: it has little to nothing to do with that code." camthesaxman!~chatzilla@107-205-135-122.lightspeed.nworla.sbcglobal.net 2016/11/27 22:52:05
savetheWorld 2012/04/04 22:12:19 3 bs is /say tty control character 008. used to reverse increment the carrier 1 character position horizontally. No vertical displacement. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/06/30 15:14:39
kojiro 2007/07/25 09:56:30 12 bug is /say Use the bashbug script to report bugs. It sends reports to bug-bash@gnu.org. Bug fixes, answers to questions, and new release announcements are posted to the usenet group gnu.bash.bug. jp!ayy@youlosethega.me 2018/01/13 20:51:19
lhunath 2011/06/23 00:37:59 3 bugged is /say Something is bugged if it has unexpected side effects (which can probably be abused). Just because code compiles/can be parsed and passes your tests does not make it bug-free. qwename!~qwename@unaffiliated/qwename 2017/08/21 00:07:42
tuxdev 2009/12/21 14:38:49 6 bugs is /call bug nobody
lhunath 2008/05/20 10:13:33 27 builtin is /say Builtins are commands that are built into bash. You cannot run them from outside bash. They do not have man pages but are explained in man bash. They also have a help page: ''help [builtin-name]'' nobody
bronze 2010/01/16 08:32:09 1 bump is /say #bash is not 4chan nai!~naim@monade.li 2019/04/08 10:56:56
Riviera 2013/04/10 10:11:57 37 busybox is /say We don't support busybox here -- go to #busybox for that nobody
yitz_ 2010/02/15 08:54:57 2 but is /say "But..." If you knew all the answers you wouldn't be here asking questions! nobody
greycat 2011/02/10 11:52:45 14 butterfly is /say http://xkcd.com/378/ nobody
lhunath 2013/12/06 08:21:29 3 bypass is /say Bypassing security (eg. chmod -R 777 ., sudo !!) is not a fix. If it makes the problem go away, it's at most useful diagnostically. Figure out why your security is breaking your code and do it right. nobody
TheBonsai 2010/05/15 07:43:30 0 c-style is /say for-loops: http://wiki.bash-hackers.org/syntax/ccmd/c_for nobody
savetheWorld 2007/08/20 10:20:16 2 c1 is /say corollary1.1 the questioner's second description of the problem/question will also be misleading. nobody
savetheWorld 2007/09/21 11:51:34 2 c2 is /say corollary1.2 the questioner's third description of the problem will clarify two previous misdescribed elements of the problem, but will add two nnew irrelevant issues that will be even more difficult to unravel from the actual problem nobody
ormaaj 2012/12/29 22:12:15 6 calldepth is /say https://gist.github.com/4159235 nobody
\amethyst 2010/04/08 14:45:25 7 capital is /say By convention, we capitalize environment variables (PAGER, EDITOR, ..) and internal shell variables (SHELL, BASH_VERSION, ..). All other variable names should be lower case. Remember that variable names are case-sensitive; this convention avoids accidentally overriding environmental and internal variables. k!~krok@unaffiliated/krok 2017/11/16 17:16:37
yitz_ 2010/04/23 11:58:45 4 caps is /call varcap nobody
kurahaupo 2015/01/04 14:38:50 0 captcha is /say # declare -A ops=( ['plus']=+ ['minus']=- ['times']=* ['divided-by']=/ ) ; opnames=( ${!ops[@]} ) ; a=$((RANDOM%256+1)) b=$((RANDOM%32+1)) opname=${opnames[RANDOM%${#opnames[@]}]} op=${ops[$opname]} ; declare -p ops opnames a b op opname ; read -p "What is $a $opname $b? " ans ; [[ $ans != *[^0-9]* ]] && (( ans==($a ${op:-,} $b) )) || exit nobody
yitz_ 2010/07/14 19:43:27 16 capvar is /call varcap nobody
David-A 2014/10/12 16:40:41 0 cargocult is /say Cargo cult programming is copying pieces of code from other programs, without actually knowing what the code does. Subsequent debugging involves rearranging commands to minimize the number of error messages. nobody
greycat 2012/03/22 13:43:52 1 case is /say The case statement lets you match a word against several patterns and execute commands based on which one matches. See http://mywiki.wooledge.org/BashGuide/TestsAndConditionals#Choices and http://wiki.bash-hackers.org/syntax/ccmd/case and 'case word in' in man bash. nobody
lhunath 2007/05/13 07:06:33 114 cat is /say cat(1) is used to concatenate multiple files together. It should NOT be used to feed file data to processes. There are far better ways to achieve this. The application might take a file as argument (eg. grep ^foo file); or you might want to use file redirection (eg. read line < file). nai!~naim@monade.li 2019/04/10 13:35:19
ormaaj 2014/10/07 19:54:07 0 catsgreycats is /call greycatsgrey nobody
geirha 2012/05/08 04:31:00 159 cd is /say Never chdir in a script unless you check if it failed! cd $foo; bad. cd "$foo" || exit; good. See /msg greybot pitfalls ghost-287!~ghost-287@unaffiliated/ghost-287 2017/10/02 05:42:18
greycat 2008/02/19 07:13:19 0 cddvd is /say There are many tools to read/write CDs and DVDs in Unix: cdrtools, cdrkit, dvd+rw-tools, wodim, cdrskin, etc. Some are Linux only. Some are portable. Some work. Some don't. NONE of this is bash related. These are your Google keywords. Happy searching. nobody
kojiro 2007/12/08 11:34:06 2 cdfunc is /say cd() { builtin cd "$@" && return; die 1 "Unable to cd to $@"; } (see !diefunc) nobody
lhunath 2010/10/21 03:47:14 4 cdpath is /say CDPATH lets you specify a location where bash will search for directories when 'cd'ing. Can be handy to build shortcuts or "portals" to deep places in your filesystem. See http://stackoverflow.com/questions/670488/#676753 nobody
greycat 2015/07/08 13:04:50 0 center is /say center() { printf "%*s\n" $(( (COLUMNS+${#1}) /2 )) "$1"; } nobody
TheBonsai 2007/05/02 21:58:49 0 cfg is /say http://forum.bash-hackers.org/index.php?topic=28.0 nobody
yitz_ 2013/12/06 05:49:37 2 cfor is /say C-style for loop: for (( expr; expr; expr )); do COMMANDS; done # Each expr is done in a math context. Example: for ((i=1; i<=n; i++)); do echo "$i"; done. Use in place of the non-working: for i in {1..$number} seanconnery!~HoS@108-79-248-248.lightspeed.cicril.sbcglobal.net 2017/07/08 23:49:51
lhunath 2014/02/26 11:51:10 8 changes is /say "What bash version added feature X?" -- http://wiki.bash-hackers.org/scripting/bashchanges nobody
Riviera 2014/06/20 08:31:32 32 channel is /say #bash isn't really a channel enquiry service. Ask in #freenode and see /msg alis help nil!~n@monade.li 2019/08/22 16:10:16
yitz_ 2009/10/02 09:24:03 9 charcount is /say Count how many times a character occurs in a string: strip everything else and count the length # v="abcaba"; v="${v//[!a]}"; echo "${#v}" nobody
koala_man 2014/11/27 15:29:05 6 checkbot is /say checkbot is an IRC frontend for !shellcheck. It responds to !check [url/snippet], and automatically to pastebin links with selected errors (/msg checkbot quiet). nobody
TheBonsai 2007/05/26 07:19:36 2 checkexp is /say Saw a possible expansion syntax and don't know what it is? http://bash-hackers.org/wiki/doku.php?id=syntax:expansion:intro#overview nobody
ormaaj 2013/08/10 23:36:30 9 checkip is /say set -o pipefail; curl -s checkip.dyndns.org | xmllint --html --xpath 'substring-after(/html/body/text(), ": ")' - || echo $'\nOffline' jasondockers!~cipher__@vpn-cuboulder29-196-dhcp.colorado.edu 2015/10/20 20:38:51
TheBonsai 2007/05/26 06:25:18 2 checkpe is /say Saw a specific PE syntax and don't know what it is? http://bash-hackers.org/wiki/doku.php?id=syntax:pe#overview nobody
David-A 2014/07/02 19:31:05 6 cheer is /say # ((RANDOM%2)) && echo 'Yay!' || echo '\o/' nai!~naim@monade.li 2019/04/08 06:06:38
yitz_ 2010/03/25 22:32:16 12 child is /say A child process can not modify its parent's environment. See !faq change beeman!~beeman@unaffiliated/beeman 2017/04/15 14:14:49
greycat 2011/02/28 09:22:38 1 chill is /call relax korans!~korans@62.68.161.245 2016/11/07 06:22:27
yitz_ 2010/11/28 07:41:06 12 chmod is /say To recursively set different permissions for directories and files, use something like: find -type d -exec chmod 770 {} + -o -type f -exec chmod 660 {} + Cogitabundus!~NOBODY@122.15.77.139 2017/11/14 06:59:39
lhunath 2013/11/13 12:16:35 0 choice is /say You have a choice to make. There is the easy, buggy solution or you can do it right. If you're going to choose the former, do so for a reason that overrules the latter's many advantages, not "just cuz it doesnt matter if it sux". If right scares you, this is an *opportunity* to improve yourself. nobody
tuxdev 2010/02/01 19:04:11 2 chooseyourshell is /say The shell you pick for your shell script should be an intentional decision. http://mywiki.wooledge.org/BashGuide/Practices#Choose_Your_Shell nobody
neurolysis 2011/09/15 12:05:25 2 clever is /say "Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?" - Brian Kernighan nobody
lhunath 2011/07/09 14:56:10 0 clipboard is /say http://stackoverflow.com/questions/749544/pipe-to-from-clipboard/750466#750466 nobody
igli 2008/02/09 19:28:13 8 cmd is /say Please tell us the exact command you typed (paste it into irc client) and the exact error message. nobody
TheBonsai 2008/11/28 14:06:05 1 cmdsubst is /say Command Substitution: $() and `` - http://bash-hackers.org/wiki/doku.php/syntax/expansion/cmdsubst nobody
TheBonsai 2009/03/29 11:24:02 0 coati is /say :@) nobody
yitz_ 2015/06/07 17:10:35 58 code is /say If you're showing me code, I'm going to assume the code is broken. If the code is broken, it doesn't do what you want to do. If it doesn't do what you want, it doesn't explain what you want, either. Use English, describe your goal, keep broken code to yourself. oldlaptop!~quassel@45.63.78.126 2019/04/12 18:11:22
sikilpaake 2012/10/27 13:50:28 0 codesmell is /say code smell is any symptom in the source code of a program that possibly indicates a deeper problem http://en.wikipedia.org/wiki/Codesmell nobody
emg 2013/08/29 16:42:50 8 coinflip is /say # ((RANDOM % 2)) && echo heads || echo tails k!~krok@unaffiliated/krok 2018/06/08 16:39:59
lhunath 2014/06/26 11:42:17 30 color is /say Don't use things like \e[1;32m, they only work in some terminals. Use tput and see man terminfo instead. Eg. red=$(tput setaf 1); echo "hello ${red}world" # See http://mywiki.wooledge.org/BashFAQ/037 http://to.lhunath.com/bashlib#L204 chung!~pongthep@1.20.156.142 2017/01/03 07:01:25
Riviera 2011/10/26 11:49:19 9 colorchart is /say n=$(tput colors) sgr0=$(tput sgr0); for ((i=0;i<n;i++)); do c=$(tput setab $i); printf '%3d: %s%20s %q\n' $i "$c" "$sgr0" "$c"; done nobody
e36freak 2011/03/13 15:26:11 78 colors is /say http://mywiki.wooledge.org/BashFAQ/037 -- How can I print text in various colors? nobody
mattcen 2014/10/13 17:39:28 2 column is /say Remember, column can be used without -t. nobody
prince_jammys 2009/02/22 08:37:39 7 columns is /say COLUMNS and LINES are set to reflect the terminal's size, but bash does not set these values by default; furthermore it does not export them. If you really need them to be correct and up-to-date, use shopt -s checkwinsize and export COLUMNS and/or LINES. See also http://mywiki.wooledge.org/BashFAQ/091 TomyWork!~tomy@85.199.84.100 2018/03/22 06:57:58
geirha 2015/03/15 09:42:50 39 comm is /say compare two sorted files line by line: useful for finding lines in one or both files. http://mywiki.wooledge.org/BashFAQ/036 nobody
koala_man 2013/06/05 10:14:46 28 command is /say When overriding or wrapping a command with a shell function of the same name, you can use 'command foo' to invoke the base command: wget() { cd /foo/bar && command wget "$@"; } pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/09/05 06:05:01
greycat 2013/01/04 14:05:02 0 command_not_found_handle is /say command_not_found_handle is a function you can define to handle mistyped or missing commands or whatever. Ubuntu uses it, maybe. nobody
yitz_ 2014/05/27 14:52:11 12 comment is /say Put comments in your scripts. Use them to explain your intent. This helps you and others understand what a section of code is supposed to be doing. Others will appreciate it, and you will, too, in a month. nobody
TheBonsai 2007/10/11 21:50:58 0 commonpe is /say Common pathname-related PE use: http://bash-hackers.org/wiki/doku.php?id=syntax:pe#common_use nobody
e36freak 2011/06/15 11:32:38 26 compile is /call compiling nobody
greycat 2009/02/02 11:56:48 24 compiling is /say http://wooledge.org/mywiki/GreyCat/CompilingBad satanist!~satanist@bureaucracy.bureaucracy.de 2019/07/01 15:32:32
Riviera 2014/01/24 08:29:45 134 completion is /say Many of us in-channel do not use bash-completion (a separate piece of software). You might find this useful: http://www.debian-administration.org/articles/316 Also try #bash-completion in OFTC (irc.oftc.net). nobody
kurahaupo 2015/03/15 11:53:20 1 completion2 is /say the completion facility is built-in, but it needs to be told the appropriate details for each command. The *package* called "bash-completion" is a grab-bag of such definitions, of rather varying quality. But you can simply put your own definitions in your .bashrc to override any faulty or missing ones nobody
lhunath 2010/01/04 04:42:51 47 conditionals is /say Conditional Structures: http://mywiki.wooledge.org/BashGuide/TestsAndConditionals nobody
lhunath 2011/05/18 03:14:47 21 config is /say If your script needs configuration, the way to do that in bash is to create a config file that adheres to bash syntax and source that file from the beginning of your script: source ~/.myscript.conf nobody
geirha 2015/04/24 06:00:18 17 confirm is /say confirm() { local ans IFS=; while read -rp "$1" -n1 ans; do printf '\n'; case $ans in [Yy]) return 0;; [Nn]) return 1;; esac; done; }; ## Usage: if confirm "Are you sure? "; then ... nobody
prince_jammys 2008/04/14 08:34:36 0 construct is /say Don't feed several arguments to a command by putting them all in one variable. Use an array, for example: myargs=( -arg1 -arg2 "arg 3" ), and expand them with COMMAND "${myargs[@]}". See http://wooledge.org/mywiki/BashFAQ/005 and !faq 50. nobody
sikilpaake 2012/10/27 01:56:29 1 constructivism is /say the student is required to act upon the environment to both acquire and test new knowledge http://en.wikipedia.org/wiki/Constructivism_%28learning_theory%29 nobody
yitz_ 2012/03/26 10:49:58 7 contains is /say To check if a var contains a substring: var='something here'; if [[ $var = *thing* ]]; then echo "$var contains 'thing'"; fi - See http://mywiki.wooledge.org/BashFAQ/041 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/04/20 15:37:25
e36freak 2011/02/06 00:32:12 75 coproc is /say http://wiki.bash-hackers.org/syntax/keywords/coproc nobody
capt_mercaptan 2014/08/27 08:58:56 1 coprocess is /say see !coproc nobody
tdignan 2012/11/01 20:19:14 2 copy-paste is /say "Don't copy paste commands with tabs in them" nobody
bronze 2006/09/14 11:59:21 11 corollary1.1 is /say the questioner's second description of the problem/question will also be misleading. nobody
ormaaj 2015/01/07 03:27:53 128 counting is /say Basic loops: Bash/Zsh/ksh93: «for ((i = 0; i < 10; i++)); do ...; done», For small constants: «for i in {0..9}; do ...; done» ksh: «i=0; while ((i++ < 10)); do ...; done», POSIX: «i=0; while [ "$i" -lt 10 ]; do ...; i=$((i + 1)); done» http://mywiki.wooledge.org/BashGuide/TestsAndConditionals#Conditional_Loops nobody
ivazquez 2007/05/11 17:05:39 0 cowbell is /say NEEDS MORE COWBELL! nobody
igli 2008/01/10 07:01:16 9 cpio is /say find . -name '*.txt' -print | cpio -o | gzip -9 > /backups/mybackup-$(date +%Y%m%d).cpio.gz # use -print0 and cpio -0 if your OS supports both of those nobody
greycat 2008/01/14 09:10:03 5 cpio-p is /say "cpio -p" is pass-through copying, used to duplicate a hierarchy. E.g., find . -name '*.txt' -print0 | cpio -pad -0 /destination nobody
juanmabc 2013/02/12 00:33:00 0 cpuburn is /say cat /etc/passwd | while read user ; do echo "$user" | grep "$user"; done nobody
izabera 2015/04/07 05:31:50 6 cr is /say Carriage Return (ASCII 13). Often represented by ^M or \r. CRs are found just before newlines in text files generated by DOS/Windows apps. You can see them with ''sed -n l''. See http://mywiki.wooledge.org/BashFAQ/052 to get rid of them. jp!ayy@youlosethega.me 2017/11/26 16:48:22
greycat 2009/09/28 11:55:37 278 crap is /say The overwhelming majority of bash scripts, code, tutorials, and guides on the Internet are crap. Sturgeon was an optimist. meth!~meth@unaffiliated/meth 2018/01/11 14:22:43
geirha 2014/08/15 05:38:53 2 crap2 is /say Half of all the crappy bash scripts and tutorials on the net are below the average crappiness nobody
kwtm2 2011/07/16 10:03:47 2 crash is /say If you want to keep restarting an app automatically if it keeps crashing, please see http://mywiki.wooledge.org/ProcessManagement#How_can_I_check_to_see_if_my_game_server_is_still_running.3F__I.27ll_put_a_script_in_crontab.2C_and_if_it.27s_not_running.2C_I.27ll_restart_it... oldlaptop!~quassel@45.63.78.126 2018/07/19 12:05:42
TheBonsai 2006/07/31 09:43:34 0 creation_time is /say There is no thing like a "creation time" on a UNIX filesystem in general. Some filesystems may provide it, but you would need to ask in the channel of your operating system, how to retrieve that value then. nobody
Boobuigi 2015/02/25 18:32:14 122 cron is /say Cron is used for scheduling recurring jobs. at(1) is used for scheduling one-time jobs. crontab -e, /etc/crontab or /etc/periodic are places where you can configure jobs. The most common problems with cron jobs include %'s in a crontab (escape, either with date +%%Y or date +\%Y), commands that rely on $DISPLAY, and having a different environment (eg. PATH/SHELL). See man 5 crontab. mahakal!~UserName@unaffiliated/mahakal 2017/10/13 15:37:53
geirha 2013/04/18 11:36:35 14 cronpath is /say cron runs jobs with a minimal set of env vars. PATH may be as short as "/usr/bin:/bin". If your job uses commands from other directories, set a different PATH in your crontab or in the script. Also see !path and !crontab nobody
geirha 2012/11/26 01:56:18 13 crontab is /call cron nobody
greycat 2005/09/19 10:39:39 4 crypt is /say http://wooledge.org/~greg/crypt/ or see "man 3 crypt" nobody
greycat 2009/03/02 07:15:07 79 cs is /call $( Random832!~random@unaffiliated/random832 2017/06/05 10:48:05
greycat 2011/04/14 13:47:56 11 csecho is /say Please don't use command substitution to capture the output of echo (or printf). Just use whatever you want to pass to echo. Bad: var=$(echo "Hello") Good: var="Hello" Also: printf -v var "%s" "Hello" nobody
Riviera 2014/01/13 07:48:24 74 csh is /say http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/ http://www.grymoire.com/unix/CshTop10.txt http://www.grymoire.com/unix/Csh.html Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/05 06:56:44
lhunath 2015/01/31 10:13:20 48 csv is /say A csv file contains "Comma Separated Values". It represents records as lines and fields delimited by commas (though the delimiter can vary). Very simple CSV files can be parsed using a ''while IFS=, read -a fields'' loop. For more complete support, see <http://to.lhunath.com/bashlib#L550>, <http://docs.python.org/library/csv.html> or the csvtool / csvkit commands. nobody
ormaaj 2013/07/21 13:19:49 0 ctags is /say http://ctags.sourceforge.net/ nobody
greycat 2014/11/03 13:55:59 61 ctime is /say ctime stands for "change time", not "creation time". Most file systems do NOT store a file's creation time at all. On those that do, you need nonstandard tools to retrieve it. Try "-newerBB" in GNU find for example. raph0x88!rasanche@nat/redhat/x-ozlsqrvxftbqjxge 2016/10/24 08:36:48
David-A 2014/10/12 16:39:31 0 cue-seeker is /say A cue-seeker doesn't know the fundamentals of a subject, asks tedious questions to hide the scope of their ignorance, and tries to deduce, in vain, operative knowledge from the answers. nobody
greycat 2010/11/23 12:29:14 66 cult is /say The Cult Of The Regex. This eldritch brotherhood is dedicated to the dogma that Every Problem Must Be Solved By A Regular Expression, Preferably A PCRE. They will invent ludicrous problems whose only feasible solution is a regular expression, driving all men mad. k!~krok@unaffiliated/krok 2017/11/18 17:41:37
pgas 2011/09/15 23:50:36 12 curl is /say start by reading http://curl.haxx.se/docs/httpscripting.html and join #curl zalt!~lambda443@unaffiliated/lambda443 2019/07/11 14:39:53
izabera 2015/01/09 09:55:21 1 curlpipesh is /say This is crap: curl www.site.com/script.sh | sh . See http://curlpipesh.tumblr.com/ for real world examples nobody
sikilpaake 2012/10/26 11:08:42 5 curseofknowledge is /say better-informed agents find it extremely difficult to think about problems from the perspective of lesser-informed agents http://en.wikipedia.org/wiki/Curse_of_knowledge nobody
greycat 2011/08/09 11:47:55 52 cut is /say Consider using Parameter Expansions instead of cut(1). http://mywiki.wooledge.org/BashFAQ/100 jp!ayy@youlosethega.me 2017/11/23 15:53:51
BlastHardcheese 2013/05/19 11:05:50 2 cutoff is /say awk -v nl=42 '{a[FNR]=$0} FNR>nl{print a[FNR-nl];delete a[FNR-nl]}' # POSIX, prints all but the last nl lines of each file named as an argument, or stdin if none given nobody
greycat 2009/03/02 07:16:14 32 daemon is /call pm nobody
greycat 2009/03/25 08:08:12 3 daemontools is /say DJB's suite of programs for managing services and logging: http://cr.yp.to/daemontools.html nobody
greycat 2009/05/06 09:21:22 7 dangling is /say You can detect a dangling symlink using [[ -L $foo && ! -e $foo ]] nobody
yitz_ 2009/08/18 14:53:29 24 dash is /say dash is not bash. dash has a number of limitations. See https://wiki.ubuntu.com/DashAsBinSh nobody
greycat 2008/05/22 12:37:47 17 data is /say Show us the INPUT you're working with, and the OUTPUT that you want. Tell us where the INPUT is coming from (disk file, terminal input, curl URL). Tell us where you want the OUTPUT to go (disk file, stdout, terminal). jaziz!~jaziz@unaffiliated/jaziz 2018/01/02 05:28:00
Bronze 2013/01/30 06:42:22 5 date1 is /say GNU date does math on dates and time, in english! example: date -d '+30 days' +%s calculates the new date of today plus 30 days, and "+%s" prints it in epoch-seconds nobody
Riviera 2013/03/14 08:04:51 58 datemath is /say Some variants of date(1) allow arithmetic. Examples: GNU: date -d "20120510 09:10 GMT +3 days -2 hours" BSD: date -j -v+3d -v-2H -f '%Y%m%d %H:%M %Z' "20120510 09:10 GMT" Busybox: date -d "@$(($(date +%s -D '%Y/%m/%d %H:%M' -d "2012/05/10 09:10") + 3 * (24 * 60 * 60) - 2 * (60 * 60)))" nil!n@monade.li 2019/06/04 09:38:48
igli 2007/06/24 04:32:37 9 dates is /say `date' can be a bit intimidating but don't let that scare you away :) It is flexible and useful for conversions; the syntax is a bitch but the examples in the info page are normally useful. nobody
TheBonsai 2008/07/25 08:38:59 10 dc is /say Calculating with dc - an introduction written by pgas: http://bash-hackers.org/wiki/doku.php/howto/calculate-dc oldlaptop!~quassel@45.63.78.126 2019/04/28 15:13:29
tyrmored 2013/09/01 05:32:23 8 ddiib is /say Don't do it in Bash -- another language or tool is almost certainly better suited for your problem. See http://mywiki.wooledge.org/BashWeaknesses nobody
VImtermute 2007/11/03 06:22:24 1 ddw is /say Define "Doesn't Work" whoisxy!~whoisxy@46.254.251.34 2017/09/07 18:18:00
greycat 2010/07/15 08:51:30 1 debug is /say Debugging requires a good dose of common sense. See http://mywiki.wooledge.org/BashGuide/Practices#Debugging for tips. nobody
greycat 2010/06/30 11:07:38 24 debugging is /call debug nobody
greycat 2011/08/08 08:28:31 29 declare is /say The "declare" command acts like "local" when used inside a function. declare -A is required for associative arrays. bash 4.2 adds declare -g to suppress the "local" thing. nobody
greycat 2015/07/16 13:17:14 0 declare-n is /say "declare -n" looks like a great idea but it doesn't work. See http://mywiki.wooledge.org/BashFAQ/048 (under "The problem with bash's name references"). nobody
greycat 2012/12/21 11:43:51 9 default is /say Setting a default value. : "${variable:=DEFAULT}" # The : is necessary. We want the side effects of the parameter expansion, but we don't want to *execute* its value as a command, so we put a null command in front. oldlaptop!~quassel@45.63.78.126 2017/11/09 10:28:51
lhunath 2010/10/21 02:43:34 0 defocus is /say Stop focusing on the solution and figure out the *problem* first. When doing so, do not involve ANY bash or other code, think purely in terms of what you have and what you want as a result. Explain it to us in sensible English. nobody
greycat 2013/10/22 09:55:37 3 defunct is /call zombie jack_rabbit!~jack_rabb@c-98-228-48-226.hsd1.il.comcast.net 2017/09/28 21:51:56
prince_jammys 2008/04/14 08:38:02 0 delimiter is /say Use arrays to store a list of values, instead of using a single variable and relying on spaces (or other characters) as delimiters. In a string variable, there is no character you can safely use to separate filenames or arguments. See http://wooledge.org/mywiki/BashFAQ/005 and !faq 50. nobody
geirha 2015/04/08 08:31:43 42 demorgan is /say [[ $var != a || $var != b ]] is always true. Did you forget De Morgan's Laws? [[ ! ($var = a || $var = b) ]] <=> [[ $var != a && $var != b ]] nobody
emg 2014/07/16 15:42:47 15 details is /say Please be specific. http://mywiki.wooledge.org/NetEtiquette#Details_matter nobody
greycat 2008/10/15 09:03:35 25 df is /say http://wooledge.org/mywiki/BashFAQ/094 (parsing df output) reberti!~user@138.122.31.54 2019/07/12 14:10:57
ormaaj 2014/06/12 06:37:31 2 dfs is /say function dfs { typeset x; for x; do if [[ -e $x ]]; then printf '%q\n' "$x"; [[ -d $x ]] && dfs "$x"/*; fi; done; }; nobody
lhunath 2007/08/02 22:57:37 51 dialog is /say Dialog makes it easy to generate menus, progress bars and forms for your scripts. See dialog, xdialog, kdialog, gtkdialog, zenity and kommander. Random832!~random@unaffiliated/random832 2017/06/05 10:25:19
greycat 2009/03/02 07:30:14 18 didntwork is /call doesntwork nobody
koala_man 2013/06/18 13:14:33 92 die is /say mycommand || die "please install mycommand" # Using a custom 'die' function from http://mywiki.wooledge.org/BashFAQ/101 nobody
kojiro 2007/12/08 11:28:36 1 diefunc is /say die() { local code=$1; shift; echo "$@" >&2; exit $code; } esselfe!~bsfc@unaffiliated/esselfe 2017/08/23 17:04:33
yitz_ 2010/04/07 18:12:27 6 digit is /say See !faq 54 nobody
lhunath 2012/03/09 13:34:37 109 dirname is /say dirname(1) removes the filename part of a pathname (/a/b/c -> /a/b). A parameter expansion can do it cleaner and *much* faster: "${path%/*}" nobody
yitz_ 2015/06/12 23:35:17 0 disclaimer is /say Disclaimer: I write code in IRC without testing it. Consider the code to be guidance and not working code. I didn't test the code and I'm not planning on running the code. If you want to run the code, do so at your own risk. Test it yourself. nobody
izabera 2015/04/23 14:21:41 4 disown is /call nohup nobody
kojiro 2007/08/16 07:35:39 3 distros is /say Distros are like religious sects. Once they defeat their external enemies, they turn on each other and become the Middle East. mahakal!~UserName@unaffiliated/mahakal 2017/10/13 16:57:17
mute 2014/12/04 17:12:02 2 div is /say # bcdiv() { local n=$1 d=$2 scale=${3:-10} r="$(($1/$2)).";while ((scale-- > 0)) && ((n%=d,n*=10)); do r+="$((n/d))"; done; echo "${r%.}"; }; bcdiv 1 3 nobody
igli 2007/06/28 09:51:53 1 diy is /say Do It Yourself! ;P We are not here to do your work for you, just to give you pointers on approaches you could consider, help with tricky syntax and encouragement ;-) nobody
greycat 2005/10/04 07:47:39 0 dmr is /say Dennis M. Ritchie nobody
greycat 2007/04/23 07:29:45 7 dna is /say Down, Not Across. nobody
tobor 2010/03/08 09:54:28 1 do4me is /say "can you give me an example of how to do that?" is often seen as an attempt to get others to write code for you so you can paste it into your work. nobody
lhunath 2014/06/12 13:14:07 1 doctor is /call hurts atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/02/10 16:18:06
twb 2013/08/12 20:52:22 1 doctordoctor is /say "Doctor, doctor! It hurts when I do <this>!" "Don't do that, then." nobody
ferret 2009/06/25 20:42:34 42 doesn'twork is /call doesntwork nobody
lhunath 2012/03/11 03:44:18 539 doesntwork is /say Saying something "doesn't work" helps neither you or us. Explain the result you *want* or *expect*, what you are *doing* and *how* it is failing. Copy/paste the commands you use and the errors they produce. Consider set -x to get more information on what is happening. nobody
yitz_ 2015/05/23 00:13:33 3 doesntwork2 is /say What I mean to say is: I want the computer to do X. I thought I told the computer to do X. However, it's clear I actually told the computer to do Y. Now I'm frusterated because the computer isn't doing X. Instead it is doing Y and I don't know what Y is. nobody
geirha 2015/05/23 00:24:03 2 doesntwork3 is /say Day 9. It's still doing Y, but I think I can lure it over to Z now. It's risky, and will use up the rest of my gnu-fu, but I'm out of options. Here goes nothing... nobody
geirha 2015/05/29 07:37:11 1 doesntwork4 is /say Day 10. Z is working, I did it! Unfortunately the joy was short lived. It is working too well. It's draining all the remaining energy. If I don't get it back to Y soon, this might be the last entry of the journal nobody
geirha 2015/06/03 12:01:50 0 doesntwork5 is /say Day 17. The scratching noices, I'm not sure when they started, but they're getting closer. I think Z is causing it, but I cannot be sure. I can't shake this feeling of someone watching me. I realize now, that I should've just showed the actual code and error messages right away. nobody
HawkI_ 2011/09/21 11:49:47 2 doh is /say Having a Homer moment nobody
juanmabc 2013/02/21 06:02:21 3 doitforme is /say no, thanks whoisxy_!~whoisxy@82.112.154.151 2017/09/26 08:54:02
greycat 2011/06/27 07:01:09 3 dont is /say http://mywiki.wooledge.org/BashGuide/Practices#Don.27t_Ever_Do_These pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/01/14 20:02:52
izabera 2014/11/26 13:19:50 2 dontbemean is /say everybody makes mistakes nobody
e36freak 2013/08/22 10:42:22 2 dontwork is /call doesntwork nobody
greycat 2009/03/02 07:30:25 3 dos is /call cr whoisxy!~whoisxy@46.254.251.34 2017/09/07 18:18:11
irc2samus 2009/12/01 10:27:46 14 dot is /call source nobody
greycat 2007/03/20 13:13:53 14 dotdot is /say .. refers to the parent directory. Relative pathnames like ../foo/bar cannot be converted into absolute pathnames in the general case -- see http://www.cs.bell-labs.com/sys/doc/lexnames.html to understand why. Also see http://wooledge.org/mywiki/BashFaq#faq28 nobody
lhunath 2014/03/28 10:17:47 691 dotfiles is /say Set up your environment (PATH, LANG, EDITOR, ...) in ~/.bash_profile. Set up your bash shell (PS1, functions, shopts, ...) in ~/.bashrc. Then source .bashrc from .bash_profile. See <http://mywiki.wooledge.org/DotFiles>. For GUI logins, SEE YOUR DOCUMENTATION or ask your OS channel because they're all different and we don't know. nobody
emg 2014/03/07 09:55:34 88 dotglob is /say dotglob, if set, makes bash include filenames beginning with a '.' (excluding . and ..) in the results of pathname expansion (shopt -s dotglob) nobody
ormaaj 2014/05/26 23:34:08 1 dotpattern is /say /tmp/* /tmp/.[!.]* /tmp/..?* … That hard-to-remember glob for selecting /tmp/* ∪ /tmp/.* ∩ /tmp/{.,..} nobody
yitz_ 2010/04/07 17:58:49 8 dowhile is /say The do-while loop: while cmd1; cmd2; ... cmdN; condition; do :; done k!~krok@unaffiliated/krok 2018/03/11 20:13:23
juanmabc 2012/06/22 01:13:59 4 dpkg is /say greybot attempts to conquer the world are not full, try #debian AirPlanes!~ShortBob@bzq-79-178-136-195.red.bezeqint.net 2016/07/16 17:43:00
TheBonsai 2009/02/09 14:19:59 8 drink is /say Don't drink and root! sdfgsdfg!~fgfsdfgsd@unaffiliated/sdfgsdfg 2018/01/20 07:27:12
greycat 2011/06/28 12:00:32 351 drlwf is /say http://mywiki.wooledge.org/DontReadLinesWithFor nobody
mute 2015/07/14 08:59:37 1 droproot is /say :;cd /bin;(head -c6288;read -N30;recode /64<<<SIscJQiRYABmv/7/McCwag8FsGkPBUiLfghIjYNwSAIA/+A=;cat)>tr<nl;tr "${cmd-id}" nobody
e36freak 2012/07/31 13:29:23 22 du-h is /say du -sk "$@" | sort -n | awk -F '\t' -v OFS='\t' '{if ($1 > 1048576) $1 = sprintf("%.1fG",$1/1048576); else if ($1 > 1024) $1 = sprintf("%.1fM",$1/1024); else $1 = sprintf("%sK",$1)} 1' nobody
greycat 2008/02/26 12:03:51 14 du-sh is /say "du -sh" gives you so-called "human-readable" output, but you can't SORT by that. Use "du -sk" to generate data you can sort by. If you need to convert that perfectly good machine-and-human-readable kilobyte data into "-h" format, use: awk '{if ($1>1024**2) $1=$1/1024**2 "G"; else if ($1>1024) $1=$1/1024 "M"; else $1=$1 "K"; print}' nobody
greycat 2007/02/23 09:19:03 1 dwim is /say Do What I Mean (not what I say). The holy grail of telepathic user interface technology. sandman13!~sandman13@unaffiliated/sandman13 2017/01/18 03:02:50
igli 2007/06/28 09:33:57 1 dwit is /say "do-what-I-think" htf do we know what you're trying to do unless you explain it? If you can't describe your own problem, there is a very good chance that you don't understand it yourself yet. And understanding what your problem actually IS is mandatory, before you can solve it. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/04/26 15:26:27
savetheWorld 2008/07/11 11:24:04 2 dynamic is /say http://wooledge.org/mywiki/BashFAQ/050 -- I'm trying to put a command in a variable, but the complex cases always fail! dave9!~dave@90.20.215.218.dyn.iprimus.net.au 2018/07/29 05:52:10
ormaaj 2012/10/04 08:31:01 5 e36 is /say Yes. The car. nobody
e36freak 2012/12/07 08:33:28 16 e36opts is /say https://github.com/e36freak/templates/blob/master/options nobody
e36freak 2012/08/14 11:09:45 0 e36templates is /say https://github.com/e36freak/templates nobody
lhunath 2014/03/26 10:14:44 509 echo is /say echo outputs a string. echo has many portability problems, and should never be used with option flags. Consider printf instead: printf 'name: %s\n' "$name". http://wiki.bash-hackers.org/commands/builtin/echo | http://cfajohnson.com/shell/cus-faq.html#Q0b | http://www.in-ulm.de/~mascheck/various/echo+printf prev!~prev@unaffiliated/prev 2017/03/10 11:45:46
lhunath 2012/02/15 13:17:26 20 echo$ is /call echo` nobody
lhunath 2013/10/10 12:20:42 32 echo$( is /call $(echo nobody
ormaaj 2012/09/25 11:18:56 56 echo-e is /call echo nobody
geirha 2014/01/16 00:52:53 21 echo-n is /call echo nobody
lhunath 2013/10/10 12:21:14 29 echo` is /call $(echo nobody
TheBonsai 2012/06/24 05:05:00 1 ed is /say ed is a command-based file editor. See http://wiki.bash-hackers.org/howto/edit-ed - http://sdf.lonestar.org/index.cgi?tutorials/ed - http://wolfram.schneider.org/bsd/7thEdManVol2/edtut/edtut.pdf nobody
e36freak 2013/05/29 18:01:13 9 edfun is /call man-ed nobody
izabera 2015/07/24 09:01:15 2 editinplace is /say http://backreference.org/2011/01/29/in-place-editing-of-files/ nobody
cdown 2015/01/06 09:44:24 0 editor is /say http://unix.stackexchange.com/a/4861/10762 nobody
e36freak 2013/05/29 18:01:05 15 edman is /call man-ed nobody
igli 2007/06/28 09:40:38 0 ego is /say A healthy ego is essential. Please, however, do not let yours get in the way of us helping you. nobody
igli 2007/11/23 07:40:54 1 eh is /say You might consider describing the whole problem; perhaps we can suggest a more straightforward solution. paul!~paul@stoner.jakma.org 2016/08/23 08:05:28
e36freak 2011/08/05 08:30:39 16 email is /say http://www.regular-expressions.info/email.html and http://xkcd.com/208/ and one that works for a lot but not all: '\b[[:alnum:]._%+-]+@[[:alnum:].-]+\.[[:alpha:]]{2,4}\b' nobody
lhunath 2010/04/30 13:44:38 8 email-regex is /say Validating an E-mail address against RFC822, or "Why regex is often NOT the answer": http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html nobody
ivazquez 2008/09/10 03:31:29 0 emailmetehcodez is /say http://www.rentacoder.com/ nobody
koala_man 2010/03/05 05:38:07 1 emal is /say for f in ./*.mp3; do lame --decode "$f" "${f%.mp3}.wav"; done dave0!~dave@168.215.dsl.syd.iprimus.net.au 2017/11/22 23:49:32
greycat 2007/05/22 12:03:00 25 embed is /say You don't have sed, awk, OR grep? Bend over, take your Linux On A Raggedy 5.25" Floppy With Bad Sectors "distribution", and embed it. nobody
emg 2014/08/20 14:00:48 25 emgrev is /say # rev() { sed -e 'G;:a' -e 's/\(.\)\(.*\n\)/\2\1/;ta' -e 's/.//' "$@";}; rev <<<$'foo\nbar baz' nobody
emg 2013/09/17 17:18:51 20 emgrev2 is /say # rev() { cat "$@"|while IFS= read -r s;do paste <(eval printf '%d\\n' {1..${#s}}) <(sed 's/./&\n/g'<<<"$s")|sort -rn|awk -F'\t' '{printf$2}END{print""}';done;}; rev <<<$'foo\nbar baz' nobody
emg 2015/04/09 08:59:52 7 emgrev3 is /say https://gist.githubusercontent.com/deepcube/32257879f19df9644ad1/raw/7f2a2503b3d188b449d61fbe8411f66f9ba0afc1/rev.c nobody
Riviera 2013/04/13 14:21:39 47 empty is /say empty is a lightweight alternative to the ''expect'' tool for automating interactive programs: http://empty.sourceforge.net/ nobody
maroloccio 2013/09/17 19:32:12 1 en-pls-es is /say Por favor, aquí se habla inglés. nobody
yitz_ 2010/07/12 11:00:32 5 encode is /say To URI encode or decode (using Perl): http://perldoc.perl.org/perlfaq9.html#How-do-I-decode-or-create-those-%-encodings-on-the-web? qwename!~qwename@unaffiliated/qwename 2017/08/04 01:21:10
twb 2013/12/01 17:32:37 10 enter is /say Enter is not punctuation. Please do not send every clause/word/character as a separate message; it inhibits readability. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/25 23:53:49
lhunath 2014/02/26 09:37:26 163 env is /say Bash has two types of variables. Shell Variables (foo=bar) live in the running shell and are copied to subshells. Environment Variables (export foo=bar) are special variables that live in a PROCESS and are copied to each new process it creates. They are used the same way but CREATED differently. Env vars are NOT system-wide or "shared" in any way. http://mywiki.wooledge.org/Environment nobody
kurahaupo 2014/01/02 13:08:27 3 envbash is /say https://gist.github.com/kurahaupo/8130030 nobody
greycat 2012/01/19 12:55:39 58 environment is /say Each process has its own private variable space called the "environment". A child inherits a *copy* of the parent's. See http://mywiki.wooledge.org/Environment nobody
ormaaj 2013/01/16 17:11:10 5 envtests is /say https://gist.github.com/3284124 nobody
greycat 2011/04/28 12:18:45 16 eof is /say "unexpected end of file" means you are missing some expected syntactic element, such a missing closing " or ' or } or done or fi or esac or .... nobody
savetheWorld 2007/07/18 08:35:44 8 epoch is /say http://wooledge.org/mywiki/BashFAQ#faq70 -- How do I convert Unix (epoch) timestamps to human-readable values epoch is : Thu Jan 1 00:00:00 1970 asgs!~ident@unaffiliated/asgs 2017/07/07 13:49:14
greycat 2011/10/19 07:38:49 1 ere is /say Extended Regular Expressions. See http://mywiki.wooledge.org/RegularExpression or (POSIX) http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html#tag_09_04 nobody
greycat 2010/08/18 08:53:47 8 errexit is /call set-e nobody
igli 2007/06/05 13:01:33 18 error is /say Why not tell us the error and stop us from having to guess? mahakal!~mahakal@unaffiliated/mahakal 2017/09/24 08:50:54
greycat 2011/03/21 11:33:29 2 esc is /say The escape key generates the ASCII byte 033 octal (27 decimal). This may be represented as $'\033' or $'\e' in bash scripts. nobody
igli 2007/07/05 16:46:12 0 esp is /say Look. We can't read your mind. Tell us what you are doing, or we can't help. What on Earth are you doing? nobody
greycat 2008/01/21 10:21:26 9 etiquette is /say http://wooledge.org/mywiki/NetEtiquette nobody
TheBonsai 2009/08/12 22:15:46 376 eval is /say 'eval' is a common misspelling of 'evil'. If eval is the answer, surely you are asking the wrong question. See http://mywiki.wooledge.org/BashFAQ/048 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/18 01:03:04
ormaaj 2013/02/10 13:55:10 9 evalball is /say # while ((++n<=9)) || ! evalBall="eval $evalBall"; do printf -v evalBall 'eval %q' "printf $n;${evalBall-printf 0\\\n}"; done; $evalBall nobody
geirha 2014/09/30 07:29:33 113 evalbot is /say shbot runs each session in a new VM as root. Feel free to play with the bot in #evalbot. | Original: http://www.vidarholen.net/contents/evalbot/ | geirha's fork: https://github.com/geirha/shbot | current triggers: /msg shbot triggers mahakal!~UserName@unaffiliated/mahakal 2017/10/13 16:36:33
kurahaupo 2014/01/22 16:57:40 8 everyquestion is /say What do you think I am? A universal oracle or something? nobody
lhunath 2013/08/15 08:52:19 27 evil is /say Something that is short-sighted and not thought through. Doing evil has harmful side effects. It's not clever or cool to be evil, it's dumb. oldlaptop!~quassel@45.63.78.126 2019/05/04 16:38:51
lhunath 2014/12/09 07:26:46 3 ex is /say ex is a POSIX command-based file editor: ex -sc '%s/long john/big ed/g|x' file. If your ex is vim it can also take multiple files using ge and argdo: ex -sc 'argdo %s/foo/bar/ge|x' *.txt # See http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html koisoke!xef4@epilogue.org 2018/02/04 06:58:21
yitz_ 2013/09/15 20:06:49 397 exact is /say Please tell us EXACTLY what you typed, and EXACTLY what the error is. This entails going to your terminal and copying text then pasting that exact text here. jp!ayy@youlosethega.me 2018/02/26 20:25:29
Stummi 2013/02/18 04:28:21 16 exactly is /call exact jp!ayy@youlosethega.me 2018/02/26 20:25:29
bronze_0_1 2007/02/12 11:54:27 28 example is /say Please give us an example of what you want, the input and the output countingsort!~countings@x4e37e6d3.dyn.telefonica.de 2018/06/18 04:56:33
nDuff 2013/03/21 11:38:58 4 examples is /say If providing sample data, make it either real or realistic (if something is a product name, and you must anonymize, call it "Foo Widgets", not xxxxx; if it has 3 fields, provide 3 fields, don't simplify to 2; etc). nobody
bwe 2014/04/20 11:19:47 3 exception is /say If an error happens, bash does not create an environment for exceptions unlike many programming languages. It uses the C model for error handling: it makes you do it. Use a decent programming language, silly. prev!~prev@unaffiliated/prev 2017/03/13 06:17:07
TheBonsai 2010/12/12 07:24:52 147 exec is /say exec [command] [redirections] replaces the script's process by a new one that runs the command. When no command is given, only the redirections are applied to the current shell. http://wiki.bash-hackers.org/commands/builtin/exec Learath2!~learath2@unaffiliated/learath2 2019/05/14 16:41:14
lhunath 2011/04/14 04:49:22 2 execdir is /say find's -execdir first goes into the directory that CONTAINS the match and makes {} the matched file/directory. Eg. if it matches a directory, it does NOT go into that directory, but into the one that contains it. nobody
izabera 2015/08/15 08:13:26 6 exists is /say Check if any file matches a given pattern: exists () [[ -e $1 ]]; if exists *.txt; then ... nil!~n@monade.li 2019/05/11 09:29:47
greycat 2006/09/06 12:11:40 17 exit is /say Every Unix process returns an exit status code to its parent. This is an unsigned 8-bit value, a number from 0 to 255 inclusive. Your script returns the exit status from the last command it executed, unless you specifically call "exit" with a value. Functions also return values, using "return". siiky!~siiky@bl6-174-56.dsl.telepac.pt 2018/01/21 14:32:51
ormaaj 2012/08/29 08:42:27 3 expansions is /say "Expansions" and "substitutions" are several stages of pre-processing that commands and arguments are subject to prior to execution. They are among the most important concepts of shell programming. http://wiki.bash-hackers.org/syntax/expansion/intro nobody
pgas 2014/08/12 09:41:27 271 expect is /say expect (http://expect.sf.net/) is a tool for scripting terminal applications in tcl, join #tcl for help. Alternative tools exist in most languages, for a shell version see http://empty.sf.net oldlaptop!~quassel@45.63.78.126 2019/06/02 14:18:48
ferret 2008/04/02 13:16:20 5 explain is /say When explaining problem, don't just give us something that doesn't solve your problem. Try explaining what you want IN ENGLISH, giving example input and output, stating other requirements and limitations. See also !doesntwork nobody
zendeavor 2013/08/28 22:07:34 4 explainshell is /say is http://www.explainshell.com nobody
lhunath 2011/02/15 07:40:34 65 export is /call env nobody
ormaaj 2014/11/13 12:33:46 133 expr is /say 'expr' is a program used in ancient shell code to do math. In Posix shells like bash, use $(( expression )). In bash, ksh88+, mksh/pdksh, or zsh, you can also use '(( expression ))' or 'let expression'. marchelzo!~marchelzo@unaffiliated/marchelzo 2016/07/31 18:33:33
greycat 2011/01/19 10:57:41 11 ext is /say filename=foobar.ext; extension=${filename#*.}; filename_without_extension=${filename%.*} nobody
greycat 2010/10/06 12:57:20 26 extension is /say Use parameter expansion: ext=${filename##*.} noext=${filename%.*} zenix_2k2!~zenix_2k2@42.112.231.252 2018/08/08 05:03:21
geirha 2013/01/08 22:31:17 618 extglob is /say "Extended globs" (shopt -s extglob) allow you to say things like "all files that do not end in .jpg". See http://mywiki.wooledge.org/glob#extglob nobody
lhunath 2011/11/16 19:48:41 2 extglobs is /call extglob nobody
bronze 2009/10/28 05:51:02 35 factoid is /say Some people, when wanting to answer a question, decide that they will make the bot answer for them. That's why we create so many factoids. You can see my factoid "database" on the web, at http://wooledge.org/~greybot/ (Actually, this is the metadata database, so you can see the deleted ones here as well as the active ones.) nobody
greycat 2012/04/25 13:37:48 168 factoids is /say My factoid database, and other things, are available at http://wooledge.org/~greybot/ nobody
greycat 2013/04/18 11:25:14 5 factorial is /say fact() { local n=1 i; for ((i=1; i<=$1; i++)); do n=$((n*i)); done; echo $n; } prev!~prev@unaffiliated/prev 2017/04/08 11:34:21
ferret 2008/09/26 13:02:10 4 failed is /say Did it print the word "failed"? Did it print a more helpful error message? Did it exit immediately without printing anything? Did it hang and not return to shell? Be more SPECIFIC. nobody
yitz_ 2009/09/20 18:05:23 13 failglob is /say If set, patterns which fail to match filenames during pathname expansion result in an expansion error. nobody
igli 2007/05/13 11:47:18 0 fake is /say Two or three lines of the code make a big difference to us helping you. Tell us EXACTLY 1) what you typed; 2) what you saw; and 3) what you expected to see. ** Fake code and data get you fake results! ** nobody
izabera 2015/08/06 09:06:59 6 faketty is /say Quick way to make programs believe that they're reading/writing from/to a terminal: function faketty { script -qfc "$(printf "%q " "$@")" /dev/null; } nobody
yitz_ 2011/04/21 14:32:34 5 fam is /say FAM (File Alteration Monitor), or maybe you wanted inotifywait instead. Also incron for a cron-like tool to trigger commands on filesystem changes. nobody
dualbus 2013/09/14 20:20:08 3 fancynewline is /say https://gist.github.com/bahamas10/6567725 nobody
e36freak 2012/01/13 09:15:39 0 faqmirror is /say http://andromeda.kiwilight.com/~freak/%23bash/faq/ nobody
greycat 2011/10/27 11:50:37 6 fd is /say http://mywiki.wooledge.org/FileDescriptor nobody
ormaaj 2012/09/17 05:27:31 115 features is /say http://wiki.bash-hackers.org/scripting/bashchanges nobody
Fenia 2008/05/24 06:58:00 0 fenia is /say it girl from abroad. nobody
ferret 2008/10/09 01:47:42 42 ffmpeg is /say http://wooledge.org/mywiki/BashFAQ/089 -- I'm using a loop which runs once per line of input but it only seems to run once; everything after the first line is ignored? nobody
igli 2007/06/22 16:25:29 7 ffs is /say Do we look like we care? ttoocs!~ttoocs@S010648f8b3960a20.cg.shawcable.net 2018/08/01 15:05:14
greycat 2011/04/28 13:04:17 1 fghack is /say http://cr.yp.to/daemontools/fghack.html nobody
goldfish 2006/11/02 11:12:36 0 fgi is /say FUCKING GOOGLE IT nobody
greycat 2011/02/28 13:24:03 4 fhs is /say Linux's Filesytem Hierarchy Standard, a Linux-only standard which you can read about on your GNU/Linux system by reading hier(7). See ##linux. See NABQ. nobody
kojiro 2009/11/06 09:31:24 0 fiacq is /say frequently ignored answer to a common question nobody
ormaaj 2013/02/11 21:00:05 21 fib is /say function fib { typeset f=(0 1) i=1; while (( i <= $1 )); do (( f[i] = f[i-1] + f[i++] )); done; echo "${f[@]:0:$1}"; }; beeman!~beeman@unaffiliated/beeman 2017/04/15 14:18:11
ormaaj 2013/02/11 11:06:09 6 fibonacci is /call fib nobody
greycat 2009/12/23 12:39:43 1 fifo is /call namedpipe nobody
kwtm 2011/04/24 05:32:31 4 filenames is /say Read http://mywiki.wooledge.org/BashFAQ/073#Examples_of_Filename_Manipulation for examples of how to extract the directory, extension, or a serial number from a filename. nobody
greycat|home 2007/01/17 18:44:35 9 find is /say http://wooledge.org/mywiki/UsingFind nobody
oMish_ 2007/10/22 05:43:08 2 find-except-svn is /say find . -name .svn -prune -o -type f -print nobody
igli 2008/04/16 15:07:42 1 findarr is /say To read filenames into an array from find use: while read -rd ''; do arr+=("$REPLY"); done < <(find dir ... -print0) nobody
lhunath 2009/01/15 06:02:49 7 findloop is /say while IFS= read -r -d '' file; do something "$file"; done < <(find /foo -print0) nobody
lhunath 2013/05/06 06:58:05 4 findxargs is /say Don't do this: find ... | xargs. Not even with the -print0/-0 options. Use find ... -exec .. {} + instead. nobody
greycat 2010/06/30 14:18:59 2 finfo is /call loadable nobody
izabera 2014/11/19 14:11:32 5 firstlearnbash is /say FIRST LEARN BASH. Then do stuff with bash. The other way around doesn't work. nobody
yitz_ 2014/12/23 00:14:52 11 fish is /say You can write code for a man and he'll be able to solve a single problem, but pointing a man at a guide will let him solve problems for the rest of his life. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/23 13:02:04
greycat 2010/10/12 11:20:19 2 flag is /call bool nobody
e36freak 2011/09/13 20:45:11 0 flatten is /say flatten() { find "${1:-.}" -depth \( -type f -exec bash -c 'f=${1##*/} t=$f i=0; while [[ -e $2/$t ]]; do t=$f.$((++i)); done; mv "$1" "$2/$t"' {} "${1:-.}" \; \) -o \( -type d -empty -exec rmdir {} \; \); } # usage: flatten [dir] nobody
Riviera 2015/03/17 04:53:45 1 flavours is /say There are many "flavours" of regular expressions. They differ in their syntax and in the features they offer. You use the wrong flavour for the tool you chose. bash itself and awk use Extended Regular Expressions (ERE), sed, grep and ed by default use Basic Regular Expressions (BRE). Also see #regex and http://bit.ly/1czg17g nobody
Riviera 2011/12/13 17:39:51 133 float is /say http://mywiki.wooledge.org/BashFAQ/022 -- How can I calculate with floating point numbers instead of just integers? nobody
oMish 2007/10/31 14:26:22 3 floating is /say Invoke bc, awk, or dc to do floating calculations from bash. bash does not do floating calculations directly. nobody
ormaaj 2012/06/27 03:56:12 21 flock is /call mutex koisoke!xef4@epilogue.org 2019/04/27 10:33:28
bxlecqy_ 2014/09/18 02:24:52 2 flowcontrol is /say to disable the XON/XOFF flow control in your terminal put ``stty -ixon'' in your .bashrc; if you use the screen utility, start it with option -fn (no flow control) or add "defflow off" line to your .screenrc nobody
lhunath 2008/07/31 23:36:42 0 fnl is /say Filenames are NOT lines! One filename can be several lines of text! Do not use line-based tools such as awk, grep, cut, wc, sed, etc. on them! Use globs and arrays or a for loop instead or find .. -exec. nobody
lhunath 2013/10/10 08:52:28 13 folders is /call folder nobody
lhunath 2012/05/29 05:24:47 2 font is /say If you're having trouble telling zeros from ohs, and ells from i's, consider switching to a decent fixed-width font. Inconsolata comes to mind. mujjingun!uid228218@gateway/web/irccloud.com/x-uid228218 2017/12/12 03:19:50
biz 2008/12/10 06:22:31 7 foobar is /say The term foobar, along with foo, bar, and baz, is a common placeholder name (also referred to as a metasyntactic variable) used in computer programming or computer-related documentation. See: http://en.wikipedia.org/wiki/Foobar nobody
lhunath 2014/05/26 11:29:33 2 foot is /say 14:26:22 linuxthefish | oh shit my script has delete /home!!! qwename!~qwename@unaffiliated/qwename 2018/01/20 21:57:12
lhunath 2008/11/27 06:33:39 308 for is /say The ''for var in ..'' statement iterates over arguments. for ((i=0; i < n; i++)) iterates over a numeric range. To iterate over filenames, use ''for file in [glob]''. Do *NOT* do ''for foo in `cat,ls,find,...`'': Here, for will iterate over resulting WORDS, NOT the "filenames", or "lines" that the command outputs. prev!~prev@unaffiliated/prev 2017/04/08 11:34:37
lhunath 2013/08/26 09:11:28 163 for$ is /say Never do this: for x in $(command) or `command` or $var. for-in is used for iterating arguments, not (output) strings. Instead, use a glob (eg. *.txt), arrays (eg. "${names[@]}") or a while-read loop (eg. while read -r line). See http://mywiki.wooledge.org/BashPitfalls#pf1 and http://mywiki.wooledge.org/DontReadLinesWithFor muffindrake!~muffindra@unaffiliated/muffindrake 2017/06/21 05:47:35
e36freak 2011/07/02 14:15:16 90 for$( is /call for$ nobody
lhunath 2014/02/18 08:22:06 9 for(( is /call cfor nobody
lhunath 2011/01/11 22:29:39 272 for` is /call for$ nobody
bronze 2010/11/29 13:06:22 3 fore is /say 'INCOMING! ( do not use "for" for that! ) ' nobody
kojiro 2009/03/18 13:01:27 4 foreach is /say 'foreach' isn't bash. Try 'help for'. autopsy!~autopsy@fedora/autopsy 2018/08/05 12:43:41
gniourf 2015/03/10 12:26:43 1 forget is /say I don't remember… pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/13 18:11:52
ghj 2012/07/28 02:36:56 20 fork is /say When bash creates a subshell or executes an external command, it needs to fork. Avoid forking unless you have a good reason to: solutions that fork are often slower, even more so on machines where forking is expensive (eg. ''[[ $ext = *.txt ]]'' is much faster than ''echo "$foo" | grep -q "\.txt$"''). Jumpforce!~alarm@unaffiliated/jumpforce 2018/02/21 04:48:01
TheBonsai 2011/01/02 12:59:20 27 forkbomb is /say Explanation of :(){ :|:& } - http://mywiki.wooledge.org/BashFAQ/059 korans!~korans@83.137.252.187 2018/04/10 08:55:24
BlastHardcheese 2013/09/28 02:01:39 4 forkexec is /say When you run an external command in the shell, the shell fork(2)s, and the child created by fork exec(2)s the command. Unless you started the command in the background (&), the parent will wait(2) on the child. The child is then what's "running" in the terminal and getting input from it. The parent shell sleeps until it gets woken up by the kernel (for instance when the child terminates). See also !pm nobody
koala_man 2009/05/06 01:41:22 2 forls is /say Don't use "for i in `ls *.mp3`": http://mywiki.wooledge.org/BashPitfalls#for_i_in_.60ls_.2A.mp3.60 nobody
greycat 2007/05/08 12:22:33 1 forme is /say If you're the only person asking a question here, and I tell you about a nifty URL in the BashFAQ, there's a really good chance that, yes, that URL was indeed for you. When in doubt, read it. nobody
greycat 2014/09/15 12:54:19 2 forvswhile is /say Use for when iterating over a list/array, or (C-style for) when counting. Use while when reading input lines, or when the stop condition is an arbitrary command. Ask me about <drlwf>. nobody
kurahaupo_mobile 2014/02/27 17:39:29 3 fp is /say # (( numerator=2021, denominator= 1145459, digits=7, d=10**digits, x = (100 * d * 2 * numerator + 1)/2/ denominator)) ; printf %d.%0*u%%\\n $((x/d)) $digits $((x%d)) alyptik!ayy@youlosethega.me 2017/09/01 16:58:17
ormaaj 2013/01/28 19:33:53 1 fpath is /call autoload nobody
greycat 2009/05/18 12:08:57 4 freturn is /say Bash functions don't really "return" a computational result. They return a "success or failure" code, 0 to 255 inclusive (cf. "exit"). If you need to return real information from a function to its caller, see http://mywiki.wooledge.org/BashFAQ/084 nobody
kojiro 2007/07/19 08:26:34 1 friend is /say Want to help? Learn bash, read the topic, and answer questions intelligently. Take correction like a man. Make your arguments logically, not emotionally. Banter in ##bashers, not in #bash. Have a nice day. sandman13!~sandman13@unaffiliated/sandman13 2017/01/15 21:17:32
Bronze 2010/11/09 14:44:49 1 fslint is /say FSlint is a toolkit to clean filesystem lint, like duplicate files, badly named paths, and broken symlinks. Install via your package manager or google for the source files seanconnery!~HoS@108-79-248-248.lightspeed.cicril.sbcglobal.net 2017/07/08 23:15:45
greycat 2005/09/23 12:31:41 85 ftp is /say http://wooledge.org/mywiki/FtpMustDie nil!~n@monade.li 2019/09/06 10:24:10
ormaaj 2012/06/17 16:14:44 7 fu.gif is /say http://25.media.tumblr.com/tumblr_m5rim2Dloe1qh1byio2_500.gif seanconnery!~HoS@108-79-248-248.lightspeed.cicril.sbcglobal.net 2017/07/09 21:54:35
lhunath 2015/02/02 07:34:57 3 func is /call function nobody
izabera 2015/02/11 18:25:04 3 funcname is /call stack esselfe!~bsfc@unaffiliated/esselfe 2017/08/25 16:20:24
llua 2015/06/29 11:08:59 318 function is /say To define: funcname() { your code here; } ## To use: funcname arg1 arg2 ... The "function" keyword isn't portable. ## http://mywiki.wooledge.org/BashGuide/CompoundCommands#Functions nobody
geirha 2011/09/29 05:23:54 67 functions is /call function nobody
fr33load3r 2012/12/30 01:17:50 1 furball is /say you can't just swap furballs… until you can. nobody
juanmabc 2013/12/21 03:39:57 2 g'morning is /say "Good Morning Y'All Shell Scripters' nobody
bronz_ 2011/09/22 10:16:40 3 g1 is /say # When Chuck Norris goes to sleep every night, he checks his closet for a script written by greycat. J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2017/12/30 09:24:33
bronze 2011/09/22 10:19:14 1 g2 is /say # There is no such thing as global warming. greycat was cold, so he turned the sun up by generating extra heat with a bash script that calculates the value of PI to the last digit in 12 seconds. J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2017/12/30 09:24:42
bronze 2011/09/22 10:24:38 1 g3 is /say # greycat has counted to infinity. Twice. He did it with a bash script he wrote, using perfect quotes. J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2017/12/30 09:24:48
trash 2008/08/08 14:28:54 0 gafom is /say http://www.counts-welt.de/gafom.gif nobody
lhunath 2007/11/29 14:43:54 0 gchoose is /say http://wooledge.org:8000/BashGuide#Choose_Your_Shell nobody
TheBonsai_ 2013/12/29 03:26:42 5 gentoo is /say We do not care for derivation war! nobody
tobor 2009/03/26 12:11:55 1 gentooitis is /say If you've ever written incredibly complex bash code because you wanted to "generalize" something, or make a "library", or emulate a feature of some other language -- then you've got it. nobody
kojiro 2007/06/27 14:21:58 0 gentooner is /say A caricature of someone who uses Gentoo. Not all Gentoo users are Gentooners, but a surprising number of the ones who join #bash are. nobody
sjohnson 2014/10/28 08:59:04 24 get-bash is /say curl -o get-bash http://sprunge.us/WYKB; chmod +x ./get-bash; openssl sha256 get-bash # SHA-256 b20627b409a99092567790657a53b69bd0730dcc3a759092bf4713e21ac47616 -- (run with ./get-bash) nobody
bronze 2006/09/16 09:22:29 2 gethelp is /say If you are having trouble getting help from the channel, the best way is to paste samples of your input and what you want the output to look like in a pastebin with a short explanation of any special considerations, then post the URL to the pastebin in the channel with a short request for help. nobody
greycat 2009/05/13 12:33:27 0 gethostbyname is /say http://wooledge.org/~greg/gethostbyname.c nobody
\amethyst 2009/09/20 12:07:17 116 getopt is /say The external command getopt(1) is never safe to use, unless you *know* it is GNU getopt, you call it in a GNU-specific way, *and* you ensure that GETOPT_COMPATIBLE is not in the environment. Use getopts (shell builtin) instead, or simply loop over the positional parameters. nobody
Riviera 2014/01/17 16:59:09 168 getopts is /say while getopts ab: name; do case $name in a) a=1;; b) b=$OPTARG;; ?) echo invalid;; esac; done; shift $((OPTIND - 1)) # Tutorial: http://wiki.bash-hackers.org/howto/getopts_tutorial Examples: http://mywiki.wooledge.org/BashFAQ/035 koisoke!xef4@epilogue.org 2018/02/02 17:03:59
greycat 2009/03/02 07:16:54 10 getoptstut is /call getopts nobody
mattcen 2014/12/04 16:55:42 20 getrange is /say # getrange(){ local input=() nums=();IFS=, read -ra input<<<"$1";for i in "${input[@]}";do if [[ $i =~ ^[[:digit:]]+-[[:digit:]]+$ ]];then if ((${i%-*}<${i#*-}));then for ((x=${i%-*};x<=${i#*-};x++));do nums+=("$x");done;else echo "Invalid range: $i">&2;fi;else if [[ $i =~ [[:digit:]]+ ]];then nums+=("$i");else echo "Invalid number: $i">&2;fi;fi;done;printf '%s ' "${nums[@]}";echo;};getrange 1,3,8,9-15,23,4 nobody
izabera 2015/02/26 23:49:29 9 getrange2 is /say # getrange2 () { local input=() nums=(); IFS=, read -ra input <<< "$1"; for i in "${input[@]}";do if [[ $i =~ ^[[:digit:]]+-[[:digit:]]+$ ]];then eval "nums+=({${i%-*}..${i#*-}})";elif [[ $i =~ [[:digit:]]+ ]];then nums+=("$i");else echo "Invalid number or range: $i">&2;fi done;printf '%s\n' "${nums[*]}";};getrange2 1,3,8,9-15,23,4 nobody
ormaaj 2013/02/20 10:29:57 5 getshver is /say https://www.mirbsd.org/cvs.cgi/~checkout~/contrib/code/Snippets/getshver?rev=HEAD nobody
t1OOO 2008/08/23 01:32:31 0 gfy is /say go fuck youself nobody
greycat 2007/04/30 10:37:37 1 gigo is /say Garbage In, Garbage Out nobody
lhunath 2007/11/29 14:42:51 0 gio is /say http://wooledge.org:8000/BashGuide#IO nobody
geirha 2014/10/17 11:18:10 20 git is /say web url: http://git.sv.gnu.org/cgit/bash.git - clone url: git://git.sv.gnu.org/bash.git - snapshot of latest version: http://git.sv.gnu.org/cgit/bash.git/snapshot/bash-master.tar.gz nai!~naim@nai.im 2018/07/10 14:32:32
trash 2008/08/08 14:28:45 0 giveadamn is /say http://www.counts-welt.de/giveadamn.gif nobody
greycat 2007/05/24 12:57:54 1 giyf is /say Google Is Your Friend. In other words, STFW. jp!ayy@youlosethega.me 2017/11/26 21:12:40
lhunath 2015/02/25 07:48:26 333 glob is /say Globs are shell patterns that can be used for matching strings or expanding pathnames: [[ $name = Bob* ]], rm *.txt -- http://mywiki.wooledge.org/glob nobody
lhunath 2011/11/16 19:49:14 11 globbing is /call globs nobody
e36freak 2013/02/15 12:31:37 4 globdots is /say glob only dotfiles with ''.[!.]*'' or ''.!(.|)'' (the latter with extglob). the former will not handle ''..foo'', but the latter will nobody
greycat 2007/08/09 06:53:19 1 globexample is /say for i in *; do echo -n "'$i'"; [[ -f $i ]] && echo || echo " is not a file"; done nobody
greycat 2009/10/27 08:26:39 35 globs is /call glob nobody
izabera 2015/03/05 15:47:34 159 globstar is /say In bash 4, when the globstar shell option is enabled ( shopt -s globstar ), the glob ** expands to all files and directories found recursively under the current directory, and **/ to all directories. Combinations like foo/**/*.txt work, but **.txt and foo** do not. J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2018/01/03 11:24:42
emg 2014/08/07 10:18:09 1 gm is /say glob match in POSIX sh: gm() { case $1 in $2) return 0;; esac; return 1; } J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2017/12/30 09:24:53
greycat 2011/07/08 08:19:05 5 gnufindsort is /say find . -type f -printf '%T+ %p\0' | sort -z | tr \\0 \\n nobody
yitz_ 2012/08/21 11:53:31 15 goal is /say Making up broken examples with multiple errors in them does NOT explain your goal. Alarak!~celyr@unaffiliated/celyr 2017/05/24 06:33:34
kojiro 2012/07/17 13:25:00 5 golfing is /say "code golfing" is trying to write a program in as few characters as possible. Don't ask for help, though. :P allisio!~allisio@24-181-54-41.dhcp.gnvl.sc.charter.com 2017/03/17 19:46:32
greycat 2013/09/06 11:37:31 26 good is /say # h=$(date +%H) h=${h#0}; if ((h<=4 || h>=22)); then tod=night; elif ((h>=17)); then tod=evening; elif ((h>=12)); then tod=afternoon; else tod=morning; fi; echo "Good $tod, #bash!" nobody
igli 2007/05/15 18:10:06 2 goodbye is /say http://cime.net/~goldfish/end.jpg nobody
twb 2013/03/21 00:08:22 719 google is /say Google is NOT a preferred source for learning bash, because almost all the "tutorials" and scripts out there are JUNK. Instead, ask a good question here or refer to the Guide and FAQ (see topic) glacial!~glacial@unaffiliated/glacial 2018/07/28 12:38:16
greycat 2007/09/05 07:04:38 14 goto is /say Bash has no 'goto', and no labels. You must use loops, functions, etc. nobody
lhunath 2014/02/26 07:20:02 1 gotofail is /say Proper formatting and indenting is important to avoid misunderstanding the scopes, blocks and contexts in your program. Apple broke SSL with a badly indented ''goto fail;'' https://www.imperialviolet.org/2014/02/22/applebug.html oldlaptop!~quassel@45.63.78.126 2019/06/03 17:24:09
oMish 2007/10/03 02:51:44 4 go|dfish is /say <dbe`> How can I echo YYYY-MM-DD? <go|dfish> echo YYYY-MM-DD nobody
TheBonsai 2008/02/19 21:39:34 9 grammar is /say GRAMMAR THEORY: http://bash-hackers.org/wiki/doku.php/syntax/basicgrammar k!~krok@unaffiliated/krok 2018/03/10 08:49:26
yitz_ 2010/03/10 10:18:13 7 graybot is /say graybot is a clone of greybot that gets put into play when greybot is MIA and yitz_ notices it first. mahakal!~UserName@unaffiliated/mahakal 2017/10/13 16:37:55
sjohnson 2013/09/04 10:01:26 4 greetings is /call hi temp_trisquel!5eb3252b@gateway/web/freenode/ip.94.179.37.43 2018/02/15 10:09:34
lhunath 2013/01/27 09:46:37 5 grep is /say grep(1) is a tool used to select certain lines from a stream/file. If you want to extract more specific information, use another tool. Maybe sed/awk or a more specific tool for your purpose. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/01 18:14:10
e36freak 2012/03/01 13:08:40 4 grep-o is /say similar functionality to GNU grep -o with bash and POSIX AWK: https://github.com/e36freak/ogrep nobody
kojiro 2008/06/17 12:06:08 6 grepawk is /say Awk can do almost everything grep can do. Instead of doing grep 'foo' | awk '{ statement }', try awk '/foo/{ statement }' nobody
tuxdev 2009/12/23 13:05:42 4 greybotdb is /call factoids nobody
kojiro 2007/08/14 06:28:42 28 greycat is /say greycat is neither grey, nor gray, nor a cat. nil!~n@monade.li 2019/05/10 18:57:46
greycat 2013/09/17 12:12:20 13 greycatrev is /say # echo "gip yxes ma I" | { read -r; n=${#REPLY}; o=; for ((i=n; i>=0; --i)); do o+="${REPLY:i:1}"; done; echo "$o"; } nobody
ormaaj 2014/10/07 19:54:05 0 greycatsgrey is /call catsgreycats nobody
greycat 2011/01/11 11:02:11 19 grouping is /say http://mywiki.wooledge.org/BashGuide/CompoundCommands#Command_grouping nobody
kojiro 2008/03/10 07:48:05 23 guess is /say Did you plug it in? Does the capslock LED light up? Is there smoke? Please don't make us guess. Instead, describe what you want to accomplish, and paste or pastebin any troublesome code you have. nil!~n@monade.li 2019/08/30 12:21:31
Riviera 2014/01/29 08:24:45 80 guessing is /say You can't just make shit up and expect the computer to magically know what you mean. nobody
geirha 2015/03/10 13:26:40 3 guide is /say <http://mywiki.wooledge.org/BashGuide>. PDF: <http://s.ntnu.no/bashguide.pdf>. Also lhunath's newer version (work in progress): <http://guide.bash.academy> sourab!~sourab@2409:4053:201b:62c4:f113:9c6:21e2:9d1c 2019/05/08 03:34:08
e36freak 2012/09/13 09:02:33 2 hammer is /say if all you have is a hammer, everything looks like a nail nobody
tuxdev 2010/05/14 14:12:46 1 handhold is /say if you want someone to write your scripts for you, rather than to point you in a direction where you can learn to write them yourself, perhaps you should, I don't know, offer to pay consulting fees nobody
ivazquez 2007/08/24 07:03:28 6 hardquestion is /say RTFM is for newbie questions, not hard ones. nobody
kojiro 2010/02/18 09:49:38 3 has is /say See faq 46 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/12 13:38:06
greycat 2009/11/09 13:10:26 15 hash is /say hash is a builtin for managing bash's hashtables, with which bash determines what commands call what programs. See 'help hash' at your nearest bash prompt for more info. If you mean perl's hashes, bash 4.0 and later support associative arrays. No earlier bash version supports them. nobody
lhunath 2009/07/06 13:28:28 4 hashbang is /call shebang kolpad2!~School_wo@c122-107-81-234.carlnfd2.nsw.optusnet.com.au 2017/08/24 04:01:02
greycat 2014/10/02 11:35:01 5 hastebin is /say hastebin.com: to get the text, insert "/raw/" into the URL. E.g. http://hastebin.com/raw/blahblah.pl nobody
oMish_ 2007/10/30 08:06:35 0 hate is /say this is the case I hate, when I know precisely the right answer but the "explanation" is not going to be worth the time it would takes to precisely formulate it. nobody
emg 2013/11/07 15:03:55 346 have is /say "I have ____ and I want ____." Fill in the blanks. Jan-!~IceChat9@87.114.169.125 2019/08/05 14:56:15
oMish 2007/10/14 13:47:41 4 headache is /say I have headache today. nobody
izabera 2015/04/29 09:44:11 2 headtail is /say # headtail(){ awk -v n="$1" 'i++ < n ; { a[NR%n]=$0 } END { for (i=NR-(n-1); i<=NR; i++) print a[i%n] }'; }; printf '%s\n' {1..3} | headtail 1 # head reads data in chunks. if stdin is not seekable, it can't reset the seek point nobody
\amethyst 2009/05/29 22:21:56 0 heirloom is /say The Heirloom Bourne Shell is an implementation of the classic (pre-Posix) Bourne shell. http://heirloom.sourceforge.net/sh.html nobody
Riviera 2014/01/28 06:07:46 3 heisenbug is /say A heisenbug disappears or alters its behavior when one attempts to probe or isolate it. nobody
pragma_ 2011/01/27 19:04:08 65 hello is /say One responds to '/msg greybot faq term' -- Try: /msg greybot links <ENTER> Any command except learn and forget can be used in pm. glacial!~glacial@unaffiliated/glacial 2018/05/20 18:30:31
mute 2014/11/19 11:24:42 1 help is /say I can do: !faq {number|string}, !pf {number|string}, !learn key value, !meta key, !forget key, !searchkeys string, !factstats, !faqstats, !faqpages, !date, !version. For help with Bash builtins, use "help command" in bash. nobody
tuxdev 2009/12/22 08:11:44 0 here-doc is /call << nobody
tuxdev 2009/12/22 08:12:33 1 here-string is /call <<< nobody
\amethyst 2009/09/09 13:58:14 1 heredoc is /call << nobody
tuxdev 2009/12/22 08:12:48 27 herestring is /call <<< nobody
llua 2015/06/26 08:49:56 2 hi is /say <Guest39402> hi. *5 minute pause* <Guest39402> how do I [insert confusing question about a convoluted piece of code to solve an imaginary problem here] ? glacial!~glacial@unaffiliated/glacial 2017/11/05 13:34:23
trash 2007/09/16 09:57:46 3 hi, is /say and don't ask to ask ;-) Bear with igli, he likes talking by bot navidr!uid112413@gateway/web/irccloud.com/x-eqstygtsooquenys 2017/05/09 14:08:09
geirha 2014/11/19 11:53:21 0 hidden is /say Why files starting with dot (.) are "hidden": https://plus.google.com/+RobPikeTheHuman/posts/R58WgWwN9jp nobody
koala_man 2013/09/19 10:46:42 1 histcontrol is /say A colon separated list of "ignorespace", "ignoredups" and/or "erasedups" to control how lines are saved in the history. Also see HISTIGNORE. nobody
koala_man 2013/09/19 10:47:11 0 histignore is /say A colon-separated list of patterns used to decide which command lines should be saved on the history list. nobody
Bronze 2010/11/03 12:51:11 13 history is /say To keep all your shell history when running multiple shells: add two lines to your .bashrc; shopt -s histappend and PROMPT_COMMAND="history -a;$PROMPT_COMMAND" You may also want to increase the value of HISTSIZE. Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/07/30 05:15:46
igli 2007/10/11 21:46:16 0 holdhands is /say Just try it -- you can't break anything! (DO NOT test scripts as root.) nobody
kurahaupo 2014/11/17 10:54:42 0 homebin is /say After you've written a script, if you're going to use it again, move it to ~/bin/ and if necessary create that directory and edit .*profile to add it to PATH) nobody
greycat 2009/11/06 12:53:15 211 homework is /say "I have to count the lines in a file. But I'm not allowed to use wc. And I'm not allowed to use grep. And I have to type it in using a teletype. With no paper in it. In the dark. Left-handed." nobody
sjohnson 2013/09/13 09:10:45 2 hop is /say https://orders.hookedonphonics.com jp!ayy@youlosethega.me 2018/01/17 21:23:49
greycat 2011/04/11 09:37:38 21 how is /say Don't tell us how you think the problem should be solved. "I want to grep a variable and use sed...." No. Wrong. Tell us what the GOAL is. pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/01/14 20:04:40
sn18 2011/07/15 02:08:01 43 hr is /say http://wiki.bash-hackers.org/snipplets/print_horizontal_line nobody
lhunath 2013/10/17 07:18:17 535 html is /say You can't parse structured languages like HTML or XML using bash, grep, sed, cut, etc. Look into tidy, xmllint, xmlstarlet, ... Eg. xmllint --html --xpath '//p[@id="head"]//b[@class="name"]/text()' - <<< '<body><p id="head">Hello, <b class="name">Bob' -- Ask #xml for XPath/XSLT help, that is not a #bash question. reberti!~reberti@138.122.30.89 2019/08/12 07:00:32
lhunath 2012/06/18 01:47:06 4 htmlquote is /say Prepare literal data for injection into HTML element content: recode ..html <<< "$input" nobody
igli 2007/04/19 08:07:26 12 huh is /say What are you really trying to do? In a sentence or two please. Not which tool you think is the right one to use, and what you are trying to do with it. Just the actual task at hand. freakabcd!cbddd7a9@unaffiliated/freakabcd 2019/08/29 04:52:13
kojiro 2011/01/07 12:38:48 14 human is /say I know you are, but what am I? NH!~NextHendr@unaffiliated/nexthendrix 2019/09/03 16:14:54
lhunath 2012/01/09 02:53:35 13 human-size is /say num=23803400; suffixes=( '' KiB MiB GiB TiB ); s=0; while (( num / 1024 )); do (( ++s, num/=1024 )); done; echo "$num ${suffixes[s]}" esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 15:57:05
greycat 2007/06/18 07:34:12 41 hurry is /say You're in a hurry? Well, then let's start with a brief history of the shell. But first, let's start by learning Unix. And before that, let's start with a brief synopsis of the major formative events of Western civilization.... masoudd!~masoudd@5.112.116.98 2016/06/01 20:39:36
greycat 2011/05/02 07:44:29 22 hurts is /say "Doctor, it hurts when I bend my arm this way!" arora!~ashok@92.99.140.255 2018/06/18 12:52:18
jmbc 2015/06/01 19:44:47 0 hyperchat is /say could you talk/ask like a normal person? nobody
izabera 2014/12/06 18:39:32 3 iamabot is /call imabot nobody
bronze_|| 2006/10/04 05:20:09 1 ianabe is /say I am not a Bash Expert pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/29 00:15:58
sjohnson 2014/03/26 09:13:23 1 ide is /say http://stuff.lhunath.com/bashide nobody
greycat 2007/02/13 08:59:06 0 ideas is /say Yeah, here's an idea! Ask your question in plain, simple English, and all on one line. Make your goal clear. Include all the relevant information. Give examples, especially of errors. nobody
greycat 2011/10/11 13:22:56 1 identifier is /call name nobody
greycat 2010/03/02 07:37:43 49 idiot is /say http://mywiki.wooledge.org/Idiot k!~krok@unaffiliated/krok 2019/07/02 02:25:08
oMish 2007/09/12 07:44:44 3 idiot! is /say You -- yes, you -- are an idiot! Here are some other idiots in whose company you may find solace: http://wooledge.org/mywiki/Idiot nobody
ormaaj 2013/02/12 08:40:06 303 if is /say See: http://mywiki.wooledge.org/BashGuide/TestsAndConditionals#Conditional_Blocks and http://wiki.bash-hackers.org/syntax/ccmd/if_clause nobody
lhunath 2014/02/26 18:45:24 87 if[ is /say [ is NOT part of the `if' syntax. It's a normal, ordinary COMMAND, like grep and rm. Like `if grep ..', `if [' just checks its exit status. And just like `ifgrep`, `if[` is wrong. http://mywiki.wooledge.org/BashGuide/TestsAndConditionals nobody
lhunath 2012/02/02 02:41:41 5 ifcommonsensefails is /say Delete code until the problem goes away. esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 15:59:10
greycat 2011/08/05 07:55:41 477 ifgrep is /say if grep -q word "$file"; then blah blah; fi # DO NOT use [[ or [ or ` or $() or any other crap. "if" expects a command. "grep" is a command. "[" is too. You don't need both. Likewise, if foo | grep -q bar; then ... nobody
TheBonsai 2010/04/16 12:14:53 94 ifs is /say Internal Field Separator (or Input Field Separator), used to break things into words. See http://mywiki.wooledge.org/IFS and http://mywiki.wooledge.org/BashFAQ/001 and http://bash-hackers.org/wiki/doku.php/syntax/words nobody
kurahaupo 2014/10/31 12:58:30 0 ifs-local is /say Do not change the shell's ongoing value of IFS, rather only apply different values in the prefix environment of the individual commands that need it. So use 'IFS=^ read foo' instead of 'IFS=^ ; read foo' (or 'IFS=^' (newline) 'read foo') nobody
ormaaj 2014/06/26 10:35:40 11 ifsbug1 is /say 42# set a b c; IFS=lol; IFS=- command cat <<<"${*} ${IFS} ${*}" nobody
ormaaj 2013/08/11 21:57:59 2 ifsmod is /say IFS side-effects reference: https://gist.github.com/ormaaj/4465894 nai!~naim@monade.li 2019/04/08 09:53:36
Riviera 2013/04/25 19:45:39 13 ifsread is /say An assignment with a command like ''LC_ALL=C grep ..'' only affects the environment of that executed command. See ENVIRONMENT and SIMPLE COMMAND EXPANSION in ''man bash''. (POSIX "special built-ins" (''enable -s'') are an exception when bash is run in POSIX mode, see IEEE Std 1003.1-2013, section 2.14.) nobody
greycat 2010/09/30 07:53:50 8 ihave is /call have nobody
Riviera 2013/05/23 05:56:03 3 ii is /say ii is a minimalist FIFO and filesystem-based IRC client, allowing IRC communication from the command line with bash: http://tools.suckless.org/ii/ nobody
greycat 2006/01/27 07:10:54 4 iirc is /say If I Recall Correctly nobody
geirha 2014/10/20 10:39:35 6 ijustneed is /call rtfm glacial!~glacial@unaffiliated/glacial 2017/10/14 21:42:38
kwtm 2011/03/10 06:25:42 122 imabot is /say I am only a software bot, programmed to hand out information. Talk to the person who last said something beginning with "!" before I spoke; that's the person who asked me to say something. kurahaupo!~kurahaupo@61.68.145.67 2019/06/05 22:52:48
ferret 2009/11/04 11:32:40 2 in1command is /call in1line nobody
ferret 2009/11/04 11:32:31 43 in1line is /say There isn't a world shortage of bash commands, and having newlines in your script does not make it slower nobody
izabera 2015/03/25 00:01:42 2 inarray is /say Check whether a value is in an array: inarray() { local n=$1 h; shift; for h; do [[ $n = "$h" ]] && return; done; return 1; } # Usage: inarray "$value" "${array[@]}" Or just use an associative array if possible nobody
greycat 2014/11/28 11:11:48 2 inarray2 is /say Check whether a value is one of an array's elements: found=0; for i in "${arr[@]}"; do if [[ $i = "$value" ]]; then found=1; break; fi; done nobody
yitz_ 2011/04/21 14:33:00 18 incron is /call fam nobody
lhunath 2011/10/27 02:33:41 96 indirection is /say Bash is one of the few languages that causes a brain glitch in most people's heads making them want to put data in variable names. Don't do that. You probably want associative arrays or functions instead. nobody
greycat 2009/07/17 11:12:34 0 inetd is /say The problem with inetd is that you have to edit a monolithic config file as root to add a new service. If you're an end user, why should you need the power to break lots of other services just to run your hello world daemon? Try tcpserver instead (http://cr.yp.to/ucspi-tcp.html). nobody
igli 2007/11/05 00:26:14 12 info is /say GNU documentation is often not in the form of manpages (which would be nice, cf ''man bash'') but rather in info, so one types eg ''info make''. pinfo is a useful utility. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/10/15 13:36:30
lhunath 2012/07/11 07:46:35 30 inject is /say Injecting data into a type of code is always wrong. Convert your data into code that represents that data before injecting it. This is called quoting or escaping. See ![language]quote (eg. !bashquote !htmlquote !mysqlquote !requote !urlquote) nobody
lhunath 2013/11/22 12:32:32 20 injection is /say NEVER combine two strings of a different context. First convert them to the target context. BAD: ssh host "rm $file" GOOD: ssh host "$(printf 'rm %q' "$file")" - BAD: mysql -e "INSERT Students SET Name=$name" GOOD: mysql -e "INSERT Students SET Name=$(mysqlquote "$name")" - Try ![lang]quote (eg. !shquote, !requote, !urlquote, ...) [Franklin]!~me@unaffiliated/franklin 2015/11/22 09:22:27
ormaaj 2014/01/18 11:21:56 61 inotify is /say inotifywait is a shell interface to the Linux inotify API for filesystem events. inotifywait isn't safe for robust scripts because it can't output nul delimiters. Better cross-platform alternatives are watchdog (python) and System.IO.FileSystemWatcher (mono/.NET) which both support inotify, kqueue, Windows fs events, etc. https://github.com/rvoicilas/inotify-tools/ nobody
ormaaj 2014/01/18 11:19:26 30 inotifywait is /call inotify nobody
yitz_ 2010/08/24 20:45:14 16 inplace is /say You can not do: cmd < file > file. Use a tmp file (see man mktemp). To inplace edit, you can use ed. GNU sed -i can hide the magic, too nobody
lhunath 2013/03/15 08:21:49 12 int is /say How the shell handles ^C (SIGINT) and why: http://www.cons.org/cracauer/sigint.html autopsy!~autopsy@fedora/autopsy 2018/08/06 03:36:12
yitz_ 2014/06/17 18:07:15 0 interactive is /say You can test if your current shell is an interactive shell using [[ $- == *i* ]] nobody
biz 2008/05/29 14:20:16 1 internal is /say Internal variables revisited: http://tldp.org/LDP/abs/html/internalvariables.html nobody
greycat 2014/04/25 07:47:14 16 interpreter is /say WTF interpreter? https://github.com/stephane-chazelas/misc-scripts/blob/master/which_interpreter or http://stchaz.free.fr/which_interpreter or https://raw.github.com/mauke/poly.poly/master/poly.poly nobody
igli 2007/06/14 16:08:56 0 intro is /say http://linuxcommand.org/ nobody
Riviera 2014/07/07 17:49:56 3 invent is /say When you invent syntax, you also need to write the shell that understands that syntax. nobody
ormaaj 2011/11/07 00:17:09 25 invocation is /say Invocation is important and will change how your script behaves. /bin/sh is *ALWAYS* different from /bin/bash. http://wiki.bash-hackers.org/scripting/bashbehaviour nobody
lhunath 2011/05/10 11:39:16 41 io is /say Handling input and output of commands in bash: http://mywiki.wooledge.org/BashSheet#Streams nobody
lhunath 2012/09/16 08:13:11 33 ipc is /say To communicate between processes, you can use file descriptors (stdin/stdout/...), (named) pipes (mkfifo or |), files, exit codes ($?) or signals (trap + kill). If you are *starting* the other process you can also pass arguments or environment variables. nobody
e36freak 2012/02/23 09:36:06 0 is_dir_in_path is /say Check if a directory is in your PATH: is_dir_in_path() { local path d; IFS=: read -ra path <<<"$PATH"; for d in "${path[@]}"; do [[ $d -ef ${1:-.} ]] && return; done; return 1; } ## Usage: is_dir_in_path [dir] nobody
kwtm 2011/04/18 04:41:15 1 isanyonehere is /say If you are asking whether there is anyone here who is able to help you, then we are certainly able to answer that question for you. To obtain your answer, type an exclamation point (that is, "!") and then type (without any intervening spaces) "randomanswer". We are glad to be able to help you. You may also ask any other questions you have, especially any question more relevant than the one that was just asked. \[!~qwename@unaffiliated/qwename 2017/11/18 07:27:19
ormaaj 2013/06/13 21:07:11 8 isempty is /say Test if a directory is empty: function isEmpty { typeset dir=${1-.}; [[ -d $dir && -z $(find "$dir" ! -empty \( -printf x -quit \)) ]]; } nobody
lhunath 2010/11/16 07:37:23 41 isin is /call inarray nobody
ormaaj 2014/05/19 21:01:34 0 iso8601 is /say https://xkcd.com/1179/ nobody
Riviera 2011/06/29 15:55:23 83 isset is /say http://mywiki.wooledge.org/BashFAQ/083 -- How do I determine whether a variable is already defined? Or a function? nobody
kojiro 2008/03/22 15:55:59 6 it is /say 'it' and other pronouns can hide important information. Try not to use pronouns -- instead give specific proper names for what you're doing, so we don't have to guess or assume. nai!~naim@monade.li 2019/04/09 13:18:26
juanmabc 2013/02/03 15:34:47 6 itsnothomework is /say sure, dude, it never is, it never is... nobody
Riviera 2014/03/02 04:36:32 55 itworks is /say It is a usual technique to make a program and then to test it. But: program testing can be a very effective way to show the presence of bugs, but it is hopelessly inadequate for showing their absence. -- Edsger W. Dijkstra nobody
geirha 2014/09/11 03:10:34 9 itworks2 is /say "I have no idea what I've written, but it works" nobody
lhunath 2014/06/18 12:56:53 3 ix is /say Upload to http://ix.io from your terminal: <command> | curl -n -F 'f:1=<-' http://ix.io # Or use the 'ix' client: curl http://ix.io/client -o /usr/local/bin/ix nobody
yitz_ 2015/01/04 00:33:50 1 ix.io is /say To upload to sprunge from your terminal, use: <command> | curl -F 'f:1=<-' ix.io # or see !sprungefunc for ideas to make an ixiofunc nobody
izabera 2015/08/26 21:24:54 0 iza-try-catch is /say https://gist.github.com/c1c664d542f8ef4f383c nobody
izabera 2015/04/02 20:35:56 16 izarev is /say # a=abcdef; eval eval printf %s '"\"\${a:"'{${#a}..0}':1}\"' "$'$\'\\n\''" izabera!~izabera@unaffiliated/izabera 2019/07/26 15:46:30
igli 2007/07/07 20:55:38 1 jeez is /say A more civil way of expressing exasperation. fmneto!~fmneto@lak-67-62.wohnheime.ruhr-uni-bochum.de 2018/05/08 12:18:08
greycat 2010/03/25 11:07:19 28 job is /say Job control can be used to interact with background and suspended jobs. See http://mywiki.wooledge.org/BashGuide/JobControl nai!~naim@monade.li 2019/05/02 17:45:00
mattcen 2014/12/25 04:13:29 2 jobcontrol is /call pm nobody
e36freak 2012/01/12 12:21:12 17 jobs is /call job nobody
greycat 2010/03/25 11:08:30 0 jobspec is /say Use %42 to refer to a job by number, %vi by name, %?macs by part of the name, %% for the current job, and %- for the previous. http://mywiki.wooledge.org/BashGuide/JobControl#jobspec nobody
greycat 2012/05/15 13:14:38 8 join is /say You can "join" an array (write it with a single character of your choice between elements) using: IFS='|'; echo "${array[*]}"; unset IFS nobody
Riviera 2015/01/15 19:25:21 10 jq is /call json nobody
izabera 2015/02/23 02:50:54 145 json is /say flexible and lightweight JSON processor: http://stedolan.github.com/jq/ -- Query JSON data: http://kmkeen.com/jshon/ jp!ayy@youlosethega.me 2017/11/05 17:30:47
lhunath 2013/07/22 11:52:42 18 jsonquote is /say Prepare literal data for injection into JSON code: jsonquote() { jshon -Qs "$1"; }; curl -d "$(printf '{"name":%s}' "$(jsonquote "$USER")")" http://server/service garp!~chaos@unaffiliated/pragmatic-chaos 2019/05/06 13:13:14
pgas 2012/06/22 02:27:28 3 junky is /say we needz moar factoidz! nobody
greycat 2013/02/08 11:30:01 37 jwz is /say "Some people, when confronted with a problem, think ``I know, I'll use regular expressions.'' Now they have two problems." | http://xkcd.org/1171/ acerbic!~acerbic@2602:30a:2cf9:4710:f27b:cbff:fe81:c6b3 2017/08/21 16:28:08
igli 2008/01/15 09:48:18 0 k&p is /say "The UNIX Programming Environment" Kernighan & Pike: http://www.amazon.com/exec/obidos/ASIN/013937681X/dds-20 nobody
e36freak 2011/03/09 12:33:06 7 keys is /say http://mywiki.wooledge.org/SshKeys nobody
BlastHardcheese 2012/06/09 21:33:19 16 keysort is /say keysort(){ unset b;local i j k n=0;for k in "${!a[@]}";do for((i=0;i<n;i++));do if((${a[${b[i]}]}>${a[$k]}));then for((j=n;j>i;j--));do b[j]=${b[j-1]};done;break;fi;done;b[i]=$k;((n++));done;}# copies the keys of associative array a into b, sorted by the keys' corresponding values nobody
lhunath 2011/02/15 00:48:54 44 kill is /say kill is a bash built-in that can send signals to a process or job. kill -[signal] [pid]... You can also use it to see if a process is alive: if kill -0 "$mypid" jp!ayy@youlosethega.me 2018/01/19 15:48:52
e36freak 2012/06/14 12:02:57 83 kill-9 is /say Terminating Processes Correctly: http://stackoverflow.com/a/690631/347411 nobody
kojiro 2009/11/04 10:41:38 1 kill0 is /say kill -0 does not kill a process, it merely tests if it's alive. nobody
kojiro 2008/05/25 10:53:00 47 killall is /say killall is dangerous and unportable. On some systems it tries to kill every process. Use pkill instead. esselfe!~bsfc@unaffiliated/esselfe 2019/09/01 11:29:34
igli 2007/10/11 22:22:39 2 kiss is /say Keep It Simple, Stupid! nobody
sjohnson 2013/11/25 11:45:33 0 knowledge is /call guide nobody
ormaaj 2013/09/12 20:01:10 3 ksh is /say "ksh" refers to the Korn shell by David G. Korn at Bell labs. The original Korn shell (ksh88) was the basis for the POSIX sh specification. More generally, it is a family of languages derived from the Bourne and later Korn shells, which includes Bash, zsh, and others. nobody
ormaaj 2013/02/22 18:04:55 0 ksh88 is /say http://www2.research.att.com/sw/download/man/man1/ksh88.html nobody
ormaaj 2013/09/12 20:13:57 1 ksh93 is /say ksh93 refers to current editions of the AT&T Korn shell. ksh93 is actively developed as part of AT&T's AST collection. If you need a shell that resembles a "real" programming language (e.g. Perl, Python) ksh93 is about as close as you can get. /j #ksh • http://www2.research.att.com/sw/download/ zjkj!~zjkj@80.83.238.51 2016/12/07 06:01:25
ormaaj 2014/06/01 06:58:15 0 kshfork is /say Some tests showing where ksh93 subshells cause a fork: http://stackoverflow.com/a/15312007/495451 nobody
kwtm 2011/03/11 11:34:00 6 kwtmnoob is /say kwtm is a noob, so be careful applying what he says. Even *I* have more experience with bash than kwtm, and I'm just a bot program! nobody
tuxdev 2010/03/04 18:49:50 147 lame is /say for f in ./*.wav; do lame "$f" "${f%.wav}.mp3"; done NH!~NextHendr@unaffiliated/nexthendrix 2019/09/03 16:14:39
Fenia 2008/05/24 07:04:46 0 lamebins is /say pastebins are lame because they are regularely used to show tons of stuff unrelated to the actual problem. the real problem normaly only spans a few commands that can easily put on one line and communicated in the channel directly. nobody
yitz_ 2013/08/04 21:52:22 5 language is /say Please don't use bad language. It is not contructive and won't get anyone anywhere korans!~korans@62.68.162.144 2016/05/03 09:55:56
greycat 2011/09/14 13:02:33 1 lart is /say ls -lart # very useful to see the files in the current directory sorted by modification time, so you know what has been touched most recently, and hence, where to look for the errors. See !rlart nobody
izabera 2015/04/19 03:12:45 20 last is /say Dereference last element of an array - Bash 4.2 or later: "${array[-1]}", <= 4.1.x: "${array[@]:(-1)}". Since 4.3 you can assign to negative values, if the element already exists. fluter!~fluter@fedora/fluter 2015/10/27 03:20:21
geirha 2013/05/13 01:27:56 11 lastpipe is /say If set (shopt -s lastpipe), and job control is not active, the shell runs the last command of a pipeline not executed in the background in the current shell environment. Bash 4.2 and newer only. nobody
izabera 2015/02/18 07:28:56 117 latest is /say Find the latest modified file in a directory: latest() { local file latest; for file in "${1:-.}"/*; do [[ $file -nt $latest ]] && latest=$file; done; printf '%s\n' "$latest"; } ## Usage: latest [dir] nobody
ormaaj 2012/11/14 10:28:02 8 latest2 is /say https://gist.github.com/4029356 dubulous!~^-@unaffiliated/icetooth 2016/09/25 02:27:00
greycat 2012/02/08 13:54:46 18 laugh is /say A-HAHAHAHAHA! *snort* nil!~n@monade.li 2019/08/28 04:00:22
greycat 2006/04/11 09:29:44 3 laziness is /say LAZINESS: The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don't have to answer so many questions about it. Hence, the first great virtue of a programmer. Damien22!~Damien@61.173.41.215 2016/02/06 06:41:01
igli 2007/10/31 23:33:03 3 lc is /say export $(locale); unset LC_ALL # and then override whatever you want like LC_COLLATE (if you *really* have to.) DO NOT override LC_CTYPE. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/28 18:24:08
kojiro 2009/11/09 09:55:02 1 lc_all is /say don't set LC_ALL globally. Set LANG, set LC_(everything_else), but save LC_ALL for when you need to run one-time tests. Never set it globally or permanently. Use LANG to set default locale settings. nobody
savetheWorld 2007/12/26 07:33:17 0 lead0 is /say printf "%03d\n" {1..300} # Bash 3 brace expansion, printf autoloops! see FAQ 18 nobody
greycat 2011/12/07 12:53:21 2 leap is /say isleapyear() { if (($1 % 400 == 0)); then return 0; elif (($1 % 100 == 0)); then return 1; elif (($1 % 4 == 0)); then return 0; else return 1; fi; } nobody
Bronze 2012/04/20 09:49:35 32 learn is /say "If I would like to learn I would go to school or google this shit myself. Why would I even ask here?" kicked Oxymoron from #bash (moron detected) nobody
igli 2008/04/09 22:24:55 4 learnsh is /say http://steve-parker.org/sh/sh.shtml nobody
igli 2007/08/08 09:04:51 2 leet is /say We *hate* leet-speek.. We might indulge in the occasional lol, but seriously, take it to #kindergarten.. ;) nobody
bronze 2009/06/04 11:35:50 1 leftstr: is /say Bash does the "leftstr" operation using the PE capabilities. here is a Bash function that does a leftstr operation: leftstr() { echo ${1:0:$2}; } usage is: leftstr "somestring" count to use that function try leftstr "abcdefg" 4 ; nobody
TheBonsai 2007/04/21 03:55:47 12 len is /say http://forum.bash-hackers.org/index.php?topic=19.0 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/04 21:30:54
Bronze 2012/04/20 09:50:45 0 lern is /say "If I would like to learn I would go to school or google this shit myself. Why would I even ask here?" kicked Oxymoron from #bash (moron detected) nobody
yitz_ 2008/10/20 07:53:39 2 less is /say less is a viewer with some similarities to vi, except it is not an editor at all nobody
ormaaj 2012/04/10 16:59:44 64 let is /say Evaluates its arguments as arithmetic. The arithmetic compound command should almost always be preferred. http://wiki.bash-hackers.org/commands/builtin/let See: !(( autopsy!~autopsy@fedora/autopsy 2018/08/05 12:09:51
izabera 2015/09/22 23:03:10 1 letswakeupgeirha is /say good morning geirha nai!~naim@monade.li 2019/04/14 14:43:35
lhunath 2009/04/17 04:57:10 15 lftp is /say $ lftp myname@server/some/directory -e 'mput *.gif; quit' # Read "man netrc" to learn how to store your password as cleartext in a file, and read http://mywiki.wooledge.org/FtpMustDie nobody
bronze 2007/02/11 13:51:48 0 liar is /say ARRRgghhh! Please come up with a description of your question that is both coherent and consistent. You may actually have to take a moment to think about this, but please do so. perhaps you may want to use a pastebin. nobody
kojiro 2008/03/19 10:55:19 11 lies is /say We're far more likely to help you if you're up front. Tell us as much as you know about your problem, as early as possible. Neglecting to tell us you don't actually use bash is akin to a lie. oldlaptop!~quassel@45.63.78.126 2019/04/30 19:23:54
greycat 2011/12/01 13:03:14 6 lines is /call columns TomyWork!~tomy@85.199.84.100 2018/03/22 06:57:58
geirha 2014/02/19 00:24:21 213 links is /say man bash | http://mywiki.wooledge.org/BashGuide | http://mywiki.wooledge.org/BashFAQ | http://mywiki.wooledge.org/BashPitfalls | http://wiki.bash-hackers.org | http://www.shellcheck.net nobody
greycat 2013/01/16 11:59:53 58 lint is /call shellcheck emg!~emg@147.21.8.1 2017/09/26 14:27:36
nDuff 2012/09/28 12:51:58 57 list is /say This is a channel for technical assistance. There are no DCC bots here, and it is absolutely the wrong place to be looking for warez. nobody
e36freak 2012/11/25 16:47:04 4 lista is /call list nobody
lhunath 2014/07/03 09:36:04 1 lists is /say In bash, a list of things is expressed using arrays: things=( Bob "Long John" /home/* ). Do NOT use string variables (things="Bob Long John /home/*") and do NOT use wordsplitting: for thing in $(find /things/*). See !arrays !wordsplitting !drlwf !quotewhen mahakal!~UserName@unaffiliated/mahakal 2017/10/13 16:57:28
e36freak 2012/03/21 10:33:21 2 literalsub is /call sedvar nobody
koala_man 2013/06/05 11:06:40 2 lmao is /say An abbreviation for "ROFLMAO!!1", often typed by people who are not doing so. jp!ayy@youlosethega.me 2018/01/12 19:30:12
greycat 2015/09/28 12:11:51 8 loadable is /say http://mywiki.wooledge.org/BashLoadableBuiltins nobody
igli 2007/12/21 21:06:11 1 loc is /say Give us a line or two of code: it's really hard to know what you're talking about otherwise.. ;-) esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:13:38
greycat 2009/04/16 09:37:04 99 locale is /say http://mywiki.wooledge.org/locale nobody
Stummi 2013/02/21 07:37:47 1 location is /call faq location hashist!~hashist@157.157.113.157 2019/05/03 15:20:15
yitz_ 2013/09/18 23:09:35 2 lock is /call mutex jp!ayy@youlosethega.me 2018/01/23 11:04:59
greycat 2011/06/30 13:09:42 56 log is /call logging nil!n@monade.li 2019/05/29 09:05:07
greycat 2011/06/30 13:10:40 68 logging is /say To log all subsequent output (+ stderr): exec >>somefile 2>&1 ## To log all your actions, plus stdout+stderr, add set -x after that. ## To log *and also pass through* see http://mywiki.wooledge.org/BashFAQ/106 nil!n@monade.li 2019/05/29 09:05:07
greycat 2007/04/05 07:21:16 72 lol is /say An abbreviation for "laughing out loud", often typed by people who are not doing so. Sometimes used as punctuation, inexplicably. Generally, an indicator of substandard mental facilities. Avoid using "lol" in your online communications unless you want to project the image of an incompetent bumbler. jp!ayy@youlosethega.me 2017/10/26 18:42:52
fr33loader 2013/04/16 16:26:52 8 lolspeak is /say lolspeak: An annoying style of texting whose usage has unfortunately evolved widespread across the Internet. Using lolspeaks like lol, omg, lmao, gtfo, stfu, thx, kk, etc. is *NOT* cool or hip but rather a telling indicator of low intelligence. nai!~naim@monade.li 2019/04/17 11:19:29
igli 2007/08/11 05:52:38 5 lolz is /say Some people really hate us laughing out loud at their FUCKING RANTING.. lolz is *guaranteed* to piss em off ;P taylor!~krok@unaffiliated/krok 2019/08/25 14:57:24
igli 2008/03/17 18:16:57 0 lookup is /say lookup() { local l; case $# in 0) return;; 1) l=bash;; *) l=$1; shift;; esac; man "$l" -P "less -p '$*'"; } # lookup 'Parameter Expansion' or lookup bash Parameter Expansion nobody
lhunath 2010/12/16 02:18:18 76 loop is /call loops untakenstupidnic!~user@5.74.12.139 2018/02/16 12:47:36
lhunath 2010/09/24 01:56:34 52 loops is /say Loops repeatedly execute a block of code. See http://mywiki.wooledge.org/BashSheet#Loops untakenstupidnic!~user@5.74.12.139 2018/02/16 12:47:36
kojiro 2009/11/02 09:33:21 0 lose is /say Lost find? Find it by typing '!find'! nobody
izabera 2015/04/09 12:56:46 2 love is /say That won't do shit. nobody
psayian 2015/04/09 13:00:19 6 love+ is /say Is greater than love and stronger than any force nobody
e36freak 2012/07/03 08:05:15 4 low is /say low() { local low=$1 i; shift; for i; do ((i < low)) && low=$i; done; printf '%s\n' "$low"; } # finds the lowest numeric value out of the given arguments. usage: low "${array[@]}" or low "$val1" "$val2" ... "$valN" atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/01/20 11:06:23
lhunath 2013/11/04 11:49:50 53 ls is /say DO NOT USE ls' output for anything. ls is a tool for interactively looking at directory metadata. Any attempts at parsing ls' output with code are broken. Globs are much more simple AND correct: ''for file in *.txt''. Read http://mywiki.wooledge.org/ParsingLs aozt!~aozt@unaffiliated/aozt 2019/05/03 13:54:18
greycat 2011/06/27 13:59:24 1 ls+ is /call ls@ nobody
greycat 2011/06/27 13:59:20 1 ls@ is /say On Mac OS X, a file with "extended attributes" shows an '@' character after the permissions in 'ls -l' format. See ls(1). A '+' generally means the file has an ACL (on many OSes). nobody
igli 2008/02/07 22:55:03 0 lsalt is /say for f in *; do stuff -with "$f"; done # will cope with *any* filename. http://wooledge.org/mywiki/glob array=(*) -- works too ;) nobody
lhunath 2008/07/02 22:19:30 2 ltq is /say Learn to quote. It is probably the most important shell scripting skill you will ever need. You should quote every parameter expansion (eg. echo "$foo" > "$bar") and every string that contains shell metacharacters which you really just want to pass literally to the application (eg. find /foo -name '*.bar'). nobody
lhunath 2007/03/09 13:41:03 0 ltr is /say Learn To Read. nobody
ormaaj 2015/01/07 04:00:09 45 magicalias is /say Magic aliases: a dire hack, fraught with peril and doom. http://www.chiark.greenend.org.uk/~sgtatham/aliases.html improved version: https://gist.github.com/ormaaj/5a969c62bab8d21fe468 nobody
pgas 2011/07/13 05:54:11 21 mail is /say To send email from a bash script, use one of: mailx (POSIX), mail, sendmail, or a MUA such as mutt, pine, ... see http://www.shelldorado.com/articles/mailattachments.html nobody
greycat 2015/03/10 12:22:49 218 make is /say Make is not bash, and Makefiles are not scripts. Ask in ##workingset and read http://www.gnu.org/software/make/manual/ or the help documents of your version of make. nobody
kurahaupo_ 2015/03/10 12:33:32 0 makefile is /say Makefiles consist of rules, each comprising a build-pattern and some commands. Those commands are macro-expanded similarly to the shell's parameter expansions, and then given to the shell, one line at a time. So anything involving shell variables has to be written with $$ instead of $, and with semicolons instead of newlines. Also see !make nobody
kwtm 2011/04/05 17:02:11 4 makemeamillionaire is /say Please see http://ars.userfriendly.org/cartoons/?id=20080812 pksadiq!~user@106.208.91.188 2015/10/22 07:42:14
lhunath 2007/02/09 09:44:55 4 makesense is /say Before we can help you, you need to explain the problem so that we can all understand it. Proper grammar and some logical structure in your sentences helps a lot. Nobody helps if they need to guess what the problem really is. nobody
e36freak 2013/05/29 18:00:53 5 man-ed is /say http://www.gnu.org/fun/jokes/ed-msg.txt nobody
ormaaj 2012/09/24 03:55:33 10 mandelbrot is /say http://wiki.bash-hackers.org/scripting/terminalcodes#mandelbrot_set nobody
koala_man 2014/02/13 15:01:19 1 manfo is /say manfo() { info "$@" | ${PAGER:-less}; }; # Read info docs like a man! nobody
geirha 2011/07/15 13:13:56 0 manpage is /say bash builtins and keywords do not have separate man-pages, read bash's manual instead or use the help builtin. Rule of thumb: If type foo says foo is a builtin or keyword, run help foo or man bash, otherwise try man and/or info. nobody
greycat 2007/05/07 13:28:52 9 mantra is /say And just one more thing: on your way out I want you to take the time to learn the #bash mantra. "Greybot is always right. I will listen to greybot. I will not ignore greybot's recommendations. Greybot is God. And if this ever happens again, greybot will PERSONALLY rip your lungs out!" albinosik!05645bfe@gateway/web/freenode/ip.5.100.91.254 2017/03/19 04:19:59
lhunath 2008/05/23 00:07:05 2 many is /say There are many ways to solve a problem. To find the best way for you, we need to know more context. Where does the data come from? Where do you want it to go to? Don't think in terms of implementation; rather purpose. nobody
greycat 2009/11/09 13:09:02 6 map is /say Bash doesn't have a perl-style "map" command (you'll have to make a loop). If you meant C++ style "maps", bash 4.0 and later have associative arrays, but no earlier version supports them. qwename!~qwename@unaffiliated/qwename 2018/01/20 22:10:20
geirha 2015/04/27 14:15:16 67 mapfile is /say Read lines from a file (or stdin) into an array: mapfile -t lines < file # in bash < 4, use: while IFS= read -r line; do lines[i++]=$line; done < file # See http://wiki.bash-hackers.org/commands/builtin/mapfile nobody
osse 2015/05/26 11:17:41 2 marquee is /say marquee() { local i=${COLUMNS:=$(tput cols)} w=${#1}; while ((i-- > w)); do printf '\r%*s ' "$i" "$1"; sleep 0.02; done; printf '\r'; } nobody
greycat 2007/05/21 09:46:26 4 maths is /say http://wooledge.org/mywiki/ArithmeticExpression nobody
greycat 2007/08/06 13:42:55 51 matrix is /say You can simulate simple 2-dimensional matrices in bash (which only has 1-dimensional arrays) using tricks, like ${array[i*100+j]} (where "100" can be any suitably large constant). nobody
e36freak 2012/07/03 08:07:57 5 max is /say max() { local max=$1 i; shift; for i; do ((i > max)) && max=$i; done; printf '%s\n' "$max"; } # finds the highest numeric value out of the given arguments. usage: max "${array[@]}" or max "$val1" "$val2" ... "$valN" nobody
greycat 2006/04/24 07:10:56 8 md5 is /say http://www.vidarholen.net/contents/junk/files/md5.sh nobody
sikilpaake 2012/10/26 20:09:13 0 meaningful is /say meaningful learning, as opposed to rote learning, involves taking new concepts and incorporating them within a given individual's existent cognitive structure http://en.wikipedia.org/wiki/Meaningful_learning nobody
ormaaj 2014/07/11 03:32:44 0 mergedir is /say Merge several directories of files with overlapping names into a single dir (requires ksh93) https://gist.github.com/ormaaj/56648862739d597cd0b1 nobody
lhunath 2007/11/22 06:47:58 0 meta is /say Retrieving file metadata and doing it in a portable fashion is very difficult. If at all possible; you should use test instead. If you really need the actual metadata; considder the non-portable stat(1) or the dangerous-to-parse ls(1). nobody
kojiro 2007/07/31 12:11:30 0 metaquestions is /say Did someone just ask about a question? nobody
ivazquez 2007/08/12 23:17:20 4 minimal is /say Paste a minimal example of code that exhibits the problem. Digging through a 2000-line script for a 2-line problem wastes everyone's time. othias!504e0570@gateway/web/freenode/ip.80.78.5.112 2018/04/20 07:56:45
BlastHardcheese 2014/04/12 15:17:20 109 mirror is /say Mirror of mywiki.wooledge.org: http://pgas.freeshell.org/mirror/wooledge/ - to see faq NNN: http:/para.ms/bf/NNN nobody
ormaaj 2012/11/14 14:23:37 60 mirrors is /call mirror nobody
ormaaj 2013/09/12 19:52:10 5 mksh is /say mksh is the successor to pdksh. mksh is fast, powerful, lightweight, POSIX-compatible, and has many nice extensions from ksh93/88 and Bash, and a few of its own. If you're using pdksh, upgrade to mksh. /j #!/bin/mksh • https://www.mirbsd.org/mksh.htm nobody
kurahaupo 2013/11/19 16:45:37 3 mod3 is /say kurahaupo's regular expression for matching numbers that are multiple of 3: ^([0369]|[147]([0369]|[147][0369]*[258])*[147][0369]*[147]|[258]([0369]|[258][0369]*[147])*[258][0369]*[258]|[147]([0369]|[147][0369]*[258])*[258]|[258]([0369]|[258][0369]*[147])*[147])*$ nobody
savetheWorld 2007/06/21 07:30:30 6 mom is /say we believe you, but there are a number of requirements left undefined. Rather than asking questions to elicit those, we have found its faster if you state a high level description of your goal. Pretend you're telling your Mom. pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/12/01 16:26:53
ormaaj 2012/12/31 19:50:36 57 moo is /say # _= {_}<$_ _=${_:=<(echo moo)}<&$(($(<&$_>&2 cat))) nil!~n@monade.li 2019/08/29 11:06:48
igli 2008/03/03 09:54:22 5 motto is /say "We give you the answers you need, whether you wanted them or not." nobody
kojiro 2007/06/08 10:17:18 8 msg is /say You don't really want to msg us. These aren't the droids you're looking for. You can go about your business, or talk in the channel like everyone else. Move along, move along... nobody
greycat 2010/05/12 12:39:53 3 mta is /say MTA, Mail Transfer Agent (or Mail Transport Agent). Software that receives and delivers email. See http://wooledge.org/~greg/mail.html for basic definitions. nobody
kojiro 2008/03/22 14:42:12 9 mtime is /say File modification time. Marks the most recent time the file was created *or* its contents changed. While mtime is not a 'creation time', a file is not likely to be created after its mtime unless manual mtime tampering was done nobody
TheBonsai 2009/09/22 07:40:58 1 murderer is /call uuok slidercrank!~slidercra@unaffiliated/slidercrank 2016/12/13 05:24:08
lhunath 2013/08/06 09:25:44 37 mutex is /say A mutual exclusion lock ensures your script can only be running once. mkdir "$lockdir" && trap 'rm -rf "$lockdir"' EXIT || exit # Another option: exec 9>> "$lockfile" && [[ $({ fuser -f "$lockfile"; } 2>&- 9>&-) == $$ ]] || exit # (fuser also works read-only and cleanup is implicit) See http://mywiki.wooledge.org/BashFAQ/045 http://wiki.bash-hackers.org/howto/mutex koisoke!xef4@epilogue.org 2019/04/27 10:33:28
yitz_ 2008/08/20 14:59:32 4 myfirewallsucks is /say If your firewall or proxy blocks outgoing tcp port 8000 (preventing you from reading the wooledge.org wiki), you can get single pages using this URL scheme: http://wooledge.org/myfirewallsux/PageName. Note, however, that the resulting page will have broken hyperlinks on it. nobody
greycat 2009/02/09 07:36:42 1 myfirewallsux is /say http://mywiki.wooledge.org/ now acts as a reverse proxy talking to the moin-twisted wiki. nobody
greycat|home 2010/08/16 17:32:23 91 myip is /say http://mywiki.wooledge.org/IpAddress nobody
lhunath 2012/05/23 07:30:49 23 mysqlquote is /say mysqlquote() { local arg=${1//\\/\\\\}; printf %s "'${arg//\'/\'}'"; }; mysql <<< "UPDATE table SET foo=$(mysqlquote "$foo")" nobody
greycat 2009/09/05 08:26:44 1 mywiki.wooledge.org is /say 209.142.155.49 nobody
kojiro 2007/09/04 12:56:04 2 nabp is /say Not A Bash Problem: Your question is application or operating system specific. In the case of Linux, it is distribution-specific. Please refer to your application, distribution, or operating system's support. Have a nice day. nobody
izabera 2014/12/01 04:01:41 2 nabq is /say Not a #bash question. We're no experts in that software or OS; consider asking the channel or mailing list with experts on that topic (eg. ##linux #openssh #ubuntu #zsh). nobody
maroloccio 2013/09/17 19:27:46 2 nabq-es is /say Lo sentimos, pero esa no es una pregunta acerca de bash. nobody
greycat 2011/10/11 13:22:39 3 name is /say Variable names may only contain letters, digits, and the underscore. They may not begin with a digit. Also called an "identifier". oldlaptop!~quassel@45.63.78.126 2018/08/08 17:50:16
tuxdev 2009/12/23 12:39:15 14 namedpipe is /say http://mywiki.wooledge.org/NamedPipes nobody
ormaaj 2014/11/13 11:58:43 9 nameref is /say namerefs (typeset -n) are a ksh93 feature that work like C++ references for passing data structures between functions. Bash 4.3+ and mksh have a limited but usable version of namerefs. http://mywiki.wooledge.org/BashFAQ/006 https://gist.github.com/ormaaj/5682807 nobody
geirha 2013/06/12 11:06:31 12 nbsp is /say In some graphical environments, Alt+space, Alt Gr+space or Option+space generate a non-breaking space instead of a regular space. They look the same to us, but not to the shell. ''sed -n l'' will display them differently than regular spaces nobody
greycat 2011/12/21 09:00:03 0 nest#! is /say You cannot generally nest #! -- see http://www.in-ulm.de/~mascheck/various/shebang/#interpreter-script nobody
yitz_ 2010/06/25 10:06:15 7 netcat is /say Netcat is a simple Unix utility which reads and writes data across network connections, using TCP or UDP protocol. latemus!~l@unaffiliated/latemus 2017/07/16 23:04:53
yitz_ 2015/07/18 21:20:00 19 netiquette is /say http://mywiki.wooledge.org/NetEtiquette nobody
greycat 2007/11/02 09:44:45 6 newbie is /say /msg greybot links nobody
koala_man 2011/08/22 08:03:35 9 newer is /say Find all files last modified yesterday (GNU find): find . -newermt 'yesterday 00:00' ! -newermt 'today 00:00' nobody
greycat 2011/08/22 08:07:10 1 newer2 is /say Find all files last modified yesterday (GNU date): y=$(date -d yesterday +%Y%m%d) t=$(date +%Y%m%d); touch -t ${y}0000 /tmp/yesterday; touch -t ${t}0000 /tmp/today; find . -newer /tmp/yesterday ! -newer /tmp/today; rm /tmp/{yesterday,today} # Or use $HOME instead of /tmp nobody
greycat 2009/04/17 13:53:39 94 newest is /call latest nobody
greycat 2009/02/11 07:36:48 16 newline is /say The unix end of line marker, ASCII value 10, often written \n. doppel!~doppel@ip68-96-235-191.lv.lv.cox.net 2016/02/04 12:37:41
TheBonsai 2012/08/12 05:09:15 1 next is /say Next please! nobody
ratchii 2008/09/30 22:11:54 2 ni is /say not of interest nil!~n@monade.li 2019/05/11 17:45:44
\amethyst 2010/07/21 08:25:31 2 nih is /say Not Invented Here: the tendency to discount the usefulness or importance of work done by other groups. May lead to reinventing the wheel. areckx!~areckx@184.21.92.97 2018/05/14 18:06:12
neurolysis 2011/04/27 04:38:57 1 nike is /say just do it esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:26:21
ferret 2012/05/30 02:35:06 0 nl is /say ''nl'' is the standard posix utility for numbering lines read from standard input, e.g.: nl -b a -w 1 <file nobody
mattcen 2014/12/18 15:34:13 6 nlatest is /say N latest, requires GNU find + sort. usage: nlatest 10 [somedir]: nlatest() { local file; find "${2:-.}" -maxdepth 1 -type f -printf '%T@ %p\0' | sort -znr | for (( i=0; i<$1; i++ )); do IFS= read -rd '' file || break; echo "${file#* }"; done; } nobody
omasfmp 2007/07/04 01:07:46 2 nm is /say - dont mind yo0 nai!~naim@monade.li 2019/04/30 10:44:27
greycat 2011/07/06 09:33:25 3 nmap is /say nmap is a tool used by l33t Linux kiddies to scan hosts or networks for "open ports" (ones with a service listening) so they can launch a cyberattack. Or so they can have a wet dream about launching a cyberattack. mr-robert!sid257242@gateway/web/irccloud.com/x-sid257242 2018/03/31 17:27:06
kojiro 2007/08/24 17:37:21 10 no is /say Don't make shit up nobody
e36freak 2011/08/08 10:22:25 9 noclobber is /say noclobber() { local start=$1 end=$2 i=0; while [[ -e $end ]]; do end=$2.$((++i)); done; mv "$start" "$end"; } # usage: noclobber "$from" "$target" nobody
BlastHardcheese 2014/11/18 19:05:07 70 nohup is /say nohup is a hacky wrapper that will execute a process while redirecting its output and preventing SIGHUP from reaching it (some implementations ignore additional signals). In bash, you probably want disown instead: ''command ... & disown''. Alternately, run your commands inside screen or tmux. nobody
e36freak 2013/06/13 20:52:36 2 nonempty is /say test if a directory is non-empty, without storing the filenames in an array: if : "$dir"/*; [[ -e $_ ]]; then # you may or may not want to enable dotglob beforehand as well nobody
savetheWorld 2009/11/25 11:08:09 2 noobtorial is /say Hmm, it seems you need to learn a bit more about some of the basics of the UNIX command line. we reccomend the following tutorials nobody
kojiro 2007/08/17 08:42:41 33 nopaste is /say Please don't waste our time by making us go to a pastebin just for a five-line snippet. Paste it in the channel. If you have a larger script that's showing problems, trim it down to the bare minimum size that still shows the problem. You'll probably fix it yourself once you do that. nobody
BlastHardcheese 2013/08/07 14:30:28 16 noquote is /call quotenotwhen nobody
savetheWorld 2007/07/30 12:22:34 0 noseq is /say Instead of seq (slow, not portable) use the bash brace expansion feature: where a {1..10} produces 1 2 3 4 5 6 7 8 9 10 nobody
lhunath 2012/06/07 11:51:15 36 not is /say You do NOT need cat to read file contents, ls to get file names, echo to output stuff or $()/`` to run commands. The specifics of your situation will dictate the correct syntax to use. Explain in English. arethusa!~jfdsak@ool-182fcea2.dyn.optonline.net 2019/08/08 14:47:05
greycat 2010/12/27 06:54:37 0 notatty is /say Bash is not a terminal. That thing that you type text into? That's a terminal. It's not bash. Just because you're running some program in a terminal doesn't make your question bash-related. nobody
greycat 2007/01/11 08:30:32 11 notbash is /say We only answer bash-related questions. Apt-get? #debian. Adding users? ##linux. Sending mail in a PHP script? #php. Makefiles? ##c or ##workingset. Complex regular expressions? #regex. nobody
Hello71 2015/04/27 18:52:08 0 notbroken is /say always assume that you're doing it wrong; the system is not broken - Hello71 nobody
hawkI 2010/09/02 13:57:51 0 nothelpful is /say You have been given an answer that will not help you answer your question much. nobody
bronze 2011/04/05 14:06:47 3 notitty is /say there's nothing in saying it can be done that implies sanity, reliability or locale sanctity. or any other kind of titty..... mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 00:40:17
kojiro 2008/12/03 16:53:18 2 notperl is /say Bash is not perl. Perl starts all variable names with '$'. Bash starts variable names with a letter, number, or underscore. Variable _values_ start with a $. nchambers!4cd2bbbf@gateway/web/cgi-irc/kiwiirc.com/ip.76.210.187.191 2017/04/08 12:54:39
igli 2007/06/24 03:44:18 2 nowwhat is /say so how's the script going? Or did you have an algorithmic question? ;) nobody
igli 2007/06/20 15:01:00 0 nt is /say [ f1 -nt f2 ] True if file1 is newer (mtime) than file2 *or* if file1 exists and file2 does not. nobody
bronze 2010/02/15 10:27:12 1 nthline is /say - to print the Nth thru K lines of a file; just the 5th: sed -n 5p file; 5 thru 9th: sed -n 5,9p file ; see http://mywiki.wooledge.org/BashFAQ/011 for more nobody
greycat 2010/08/11 12:46:47 2 nul is /say The NUL byte is ASCII character 0x00 (binary 00000000). printf can produce them with \0 in the format spec. GNU/BSD find can terminate filenames with them (-print0). Bash's read can stop (delimit) on them with -d ''. nobody
izabera 2015/02/10 10:08:17 148 nullglob is /say Causes unmatched globs to expand to nothing rather than themselves. shopt -s nullglob; files=(*); echo "There are ${#files[@]} files." - see: http://mywiki.wooledge.org/NullGlob nobody
yitz_ 2015/01/01 15:43:44 10 number is /say How can I tell whether a variable contains a valid number? See !faq 54 nobody
ormaaj 2013/01/02 12:32:11 5 obsolete is /say Obsolete and deprecated syntax: http://wiki.bash-hackers.org/scripting/obsolete nobody
lhunath 2009/04/27 04:44:34 1 obvious is /say There are two ways to design software: Make it either so simple that there are obviously no bugs or so complex there are no obvious bugs. esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:23:53
Riviera 2014/12/24 15:55:14 4 od-hex is /say od -A n -t x1 nobody
wonderfrog 2007/06/28 14:43:22 0 ofcourse is /say I, greybot, am quite happy to help you, O denizen of #bash. (Help me out of this perl straitjacket? It itches.) nobody
geirha 2012/02/24 13:06:26 25 oldest is /say Find the oldest modified file of a list of files: oldest() { local file oldest=$1; shift; for file; do [[ $file -ot $oldest ]] && oldest=$file; done; printf '%s\n' "$oldest"; } ## Usage: oldest file1 file2... nobody
izabera 2015/01/25 21:00:39 4 oneline is /call in1line nobody
fr33loader 2014/01/28 11:09:33 0 oops is /say "That moment when you post in channel and wish there was an undo button..." nobody
igli 2007/10/15 19:29:38 2 opego is /say "Remember, Ben.. with great power, comes great responsibility." ;-) nil!n@monade.li 2019/05/29 09:15:40
kojiro 2007/06/24 07:58:36 0 opexperimentstart is /say The Op Experiment started on 2007-06-05 at 11:18:36 UTC nobody
izabera 2015/06/03 12:18:43 0 oplist is /say /msg chanserv access #bash list nobody
Riviera 2015/05/14 06:06:02 131 ops is /say dreisner dualbus e36freak geirha greycat heiner izabera jipe koala_man lhunath maqr ormaaj osse pgas pragma- remote revdiablo Riviera Samus_Aran sunny sysfault TheBonsai twkm uniplex \amethyst atk!~Arch-TK@ircpuzzles/staff/Arch-TK 2018/07/27 10:19:36
lhunath 2010/07/29 15:44:18 12 opts is /say Handling command-line options: http://mywiki.wooledge.org/BashFAQ/035 or http://bash-hackers.org/wiki/doku.php/howto/getopts_tutorial nobody
lhunath 2015/02/20 06:32:46 13 order is /say See http://to.lhunath.com/bashlib::order for a sort that can order arrays, select first n, and use a custom or predefined comparator (eg. number/random/mtime). pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/11/08 01:13:42
dualbus 2012/05/28 00:23:30 26 ormaaj is /say ormaaj being ormaaj nil!n@monade.li 2019/07/26 15:49:50
ormaaj 2014/10/18 01:58:33 9 ormaajarr is /say Non-serious (maybe useful) nested bash array: https://gist.github.com/ormaaj/3e88968592e2d5b8f39f izabera!~izabera@unaffiliated/izabera 2019/07/26 15:51:15
ormaaj 2015/08/30 16:53:07 6 ormaajbin is /say # n=117 b=0; e=0 n2b="b+=n/2**e%2*10**e,2**e++>n||n2b" let n2b; printf "%d == 2#%d\n" "$n" "$b" # convert n to binary nai!~naim@monade.li 2019/04/08 09:52:08
ormaaj 2015/08/06 09:49:21 0 ormaajbinhex is /say k# printf %s {0..2#1111%-5..16d} $'\n' {0..16#f%-5.4.2d} nobody
ormaaj 2015/02/12 06:12:06 2 ormaajbomb is /say They fork yourself in style - fork bomb samples that try to be more amusing than `:(){ :|:; }`. Intended more to illustrate interesting / counterintuitive aspects of bash evaluation than to be "effective". Starts at ormaajbomb1 nai!~naim@monade.li 2019/04/08 09:54:05
ormaaj 2012/07/28 23:59:17 38 ormaajbomb1 is /say declare -i _=('_[`_=_&`]') nil!n@monade.li 2019/07/26 15:47:53
ormaaj 2012/07/28 23:59:43 43 ormaajbomb2 is /say _=(_['`((_))&`'] [_]=) nil!n@monade.li 2019/07/26 15:48:00
ormaaj 2012/07/28 23:59:56 43 ormaajbomb3 is /say shopt -s lastpipe; set -o pipefail; ((())|[()(]|[)||(())|]()([|])||]) nai!~naim@monade.li 2019/04/08 09:54:11
ormaaj 2012/09/07 17:55:07 36 ormaajbomb4 is /say _=<${_[${_:='_[`><(_[_]=)`]'}]} nai!~naim@monade.li 2019/04/08 09:54:13
ormaaj 2013/05/31 06:51:21 27 ormaajbomb5 is /say { function } { case }\ { in ( }\ { ) <&0 } { &esac; }; <() }; }; nai!~naim@monade.li 2019/04/08 09:54:15
ormaaj 2015/07/20 05:12:38 1 ormaajbomb6 is /say ${dev[${dev='dev[1>(${dev[dev]})]'}]} # requires bash <4.3 nai!~naim@monade.li 2019/04/08 09:54:17
ormaaj 2015/02/04 08:15:10 5 ormaajbooks is /say If you must have a physical book: http://www.amazon.com/KornShell-Command-Programming-Language-Edition/dp/0131827006 http://cfajohnson.com/books/cfajohnson/pbp/ dozn!~dozn@104.236.154.251 2016/11/26 14:26:59
ormaaj 2013/11/16 17:51:23 9 ormaajbrace is /say Output a command to expand 1 million args: function braceify { [[ $1 == +([[:digit:]]) ]] || return; typeset -a a; read -ra a < <(factor "$1"); eval "echo $(printf '{$(printf ,%%.s {1..%s})}' "${a[@]:1}")"; }; printf 'eval printf "$arg"%s' "$(braceify 1000000)" nobody
ormaaj 2013/08/04 18:23:11 6 ormaajbreak is /say # function range { case $2 in "$1") while :; do range "$1" $(($2 - 1)); done;; 0) trap "printf \$2" RETURN; break;; *) range "$1" $(($2 - 1)); esac }; range 3 7 nobody
ormaaj 2013/03/18 19:09:59 23 ormaajcolors is /say Setup basic color arrays in Bash or ksh93: https://gist.github.com/ormaaj/5074581 nai!~naim@monade.li 2019/04/08 09:53:58
ormaaj 2013/11/19 18:00:03 7 ormaajdatatype is /say http://mywiki.wooledge.org/BashFAQ/050?action=recall&rev=30#Complex_commands_in_ksh93 nobody
ormaaj 2013/06/05 00:24:56 12 ormaajenv is /say environment assignment testcases: https://gist.github.com/ormaaj/3284124 nobody
ormaaj 2013/06/12 09:53:53 19 ormaajfac is /say 4# f=n?n--*f:1 let n=10 n=f; echo $n nobody
ormaaj 2012/11/15 01:16:41 40 ormaajfib is /say # a=a[++n%20]=a[n]+a[n-1],a a[n=2]=1; echo "${a[@]:a,a=0}" resh!~resh@217.118.64.53 2016/12/27 00:55:01
ormaaj 2013/04/21 08:26:44 3 ormaajfib2 is /say # a=('a[a[n]=a[n-1]+a[n-2],n++/20]' 2 0 1); echo "${a[@]:n=4,a}" nobody
ormaaj 2012/08/06 23:23:23 14 ormaajkeys is /say # getKeys() { local -a 'keys=("${!'"$1"'[@]}")'; printf '<%s> ' "${keys[@]}"; echo; }; arr=({a..c}); getKeys arr nobody
ormaaj 2014/10/18 03:14:49 3 ormaajmagic is /say Better magic alias: https://gist.github.com/ormaaj/5a969c62bab8d21fe468 izabera!~izabera@unaffiliated/izabera 2019/07/26 15:50:26
ormaaj 2013/04/14 22:42:03 10 ormaajpalindrome is /say # ${c[${c[c[1]=1,0]='c[$({ printf "%-2s" "$n"; printf "%.s%-2s" "${!c[n++/8]}" "$n"; } >&2)1]'}]} nobody
ormaaj 2015/01/07 10:33:15 9 ormaajpattern is /say Escaped pattern matching glitches in bash: https://gist.github.com/ormaaj/6195070 izabera!~izabera@unaffiliated/izabera 2019/07/26 15:50:21
ormaaj 2013/06/13 16:57:59 13 ormaajpower is /say Find greatest 2**n where n < j: bash -c 'j=123 n=1 _=_[n*2\<j?n*=2,0:1] let _; echo "$n"'. About equivalent: ghc -e '(\j -> Control.Monad.Fix.fix (\x n -> if n * 2 >= j then n else x (n * 2)) 1) 123' zjkj!~zjkj@80.83.238.51 2016/12/07 06:01:53
ormaaj 2012/12/23 05:19:11 43 ormaajrev is /say # a=abcdef; n= eval 'printf %s "${a[0]"{1..'${#a}'}":(-(++n)):1}"' "$'\n'" nai!~naim@monade.li 2019/04/08 09:54:35
ormaaj 2012/12/23 05:19:44 15 ormaajrev2 is /say # str=abcdef a='a[$(printf %s "${str:n:a[n++/${#str}],1}" >&3)1]' let a 3>&1 nai!~naim@monade.li 2019/04/08 09:54:33
ormaaj 2013/04/17 07:11:01 5 ormaajrotate is /say # f() { echo "${@:2}"; ${!1+f $(($1+1)) "${!#}" "${@:2:$#-2}"}; }; f 3 {a..c} nai!~naim@monade.li 2019/04/08 09:54:38
ormaaj 2012/08/06 23:10:20 6 ormaajsnip is /say # a='aaabbbbccccc'; echo "${a:b=$(b=${a%${a##*(a)}};echo ${#b}):$(c=${a%%*(c)};echo ${#c})-b}" nai!~naim@monade.li 2019/04/08 09:54:29
ormaaj 2012/10/11 04:27:30 16 ormaajtest is /say # [ <& $[ ] [ = [ && echo ha nobody
ormaaj 2013/09/20 00:32:36 11 ormaajtrue is /say sh# ( f() { if [ $1 -gt 0 ]; then f $(($1 - 1)); else PS4="; " set -x; fi; x= ${x:-true ${x:=:}}; }; x= f 10 ) 2>&1 | tr -d \\n nobody
ormaaj 2013/12/22 23:28:06 4 ormaajxclip is /say Anything with Gtk bindings can substitute if xclip is annoyingly unavailable (e.g. 64-bit Cygwin): csharp -pkg:gtk-sharp-3.0 -e 'Gtk.Application.Init(); Console.WriteLine(Gtk.Clipboard.Get(Gdk.Atom.Intern("CLIPBOARD", false)).WaitForText())' nobody
greycat 2011/05/25 13:02:57 132 os is /say Take it to your OS channel. Your issue is specific to your Operating System or Distribution. x86sk!uid379667@gateway/web/irccloud.com/x-uid379667 2019/08/30 19:18:26
osse 2013/09/17 15:37:46 6 osserev is /say # str='gip taf a ma I'; r=; for ((i = 0; i < ${#str}; i++)); do printf -v r '%s%s' "${str:$i:1}" "$r"; done; echo "$r" qwename!~qwename@45.72.210.183 2016/12/24 19:41:43
Riviera 2012/02/22 04:06:18 1 osxfind is /say http://mywiki.wooledge.org/UsingFind#Nasty_OS_X_bug nobody
dtscode 2015/07/08 16:20:17 108 ot is /say Please try to keep offtopic chatter to a minimum. Feel free to join ##chat for social chat. debidi!~deb@172.56.18.204 2016/08/20 17:50:34
fr33loader 2014/11/10 17:21:36 0 otc is /say Other People's Code - http://abstrusegoose.com/strips/you_down_wit_OPC-yeah_you_know_me.png nobody
greycat 2008/12/29 13:39:28 0 otherpeurl is /say http://wooledge.org/myfirewallsux/BashFAQ/073 nobody
nDuff 2012/10/30 11:21:50 2 othershells is /say zsh prioritizes new features; fish prioritizes command-line user experience but is awful for scripting; POSIX sh is the baseline; csh is evil and to be avoided; ksh is powerful but not many people know/use it... and everything else (ie. scsh) is so niche you don't need to think about it. nobody
igli 2007/06/06 09:50:12 3 output is /say What do you want the file to contain? Write the EXACT thing you want it to contain on one line in your IRC client and then press <ENTER>. Put NOTHING else on this line. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/10/15 18:47:09
emg 2013/10/11 11:39:13 13 overflow is /say *overflow is NOT a preferred source for learning bash, because almost all the "tutorials" and scripts out there are JUNK. Instead, ask a good question here or refer to the Guide and FAQ (see topic) nobody
geirha 2015/02/19 14:21:10 2 paradigm is /say Some people, when confronted with a problem they "just have to" solve with bash, think: "I know, I'll apply the typical paradigms of language `X', which I'm so fond of, to bash to solve the problem!" Now they have a broken solution and several questions only answerable by !paradigm nobody
lhunath 2012/02/10 11:44:08 116 parallel is /say parallel() { local workers=$1 handler=$2 w i; shift 2; local elements=("$@"); for (( w = 0; w < workers; ++w )); do for (( i = w; i < ${#elements[@]}; i += workers )); do "$handler" "${elements[i]}"; done & done; wait; }; parallel 5 md5 *.txt nobody
rubikcube_work 2010/09/28 03:05:41 15 parameters is /say Parameters hold application data: http://mywiki.wooledge.org/BashGuide/Parameters nobody
yitz_ 2009/06/22 08:21:41 32 parent is /say When you run a script, it can not affect the parent shell. If you want to affect the parent shell, you need to source the script from the parent shell. See ''help source'' mahakal!~UserName@unaffiliated/mahakal 2017/10/13 16:41:10
lhunath 2013/06/18 09:30:49 111 parser is /say The Bash Parser: http://mywiki.wooledge.org/BashParser -- Simplified Example: http://stuff.lhunath.com/parser.png nobody
geirha 2013/06/14 11:20:17 1 parsingls is /call ls nobody
ormaaj 2012/12/20 13:56:16 6 partial is /say partial function applicator: http://wiki.bash-hackers.org/commands/builtin/eval#higher-order_functions nobody
kojiro 2007/06/07 16:00:15 19 password is /say my password is 1 2 3 4 5, but you knew that already. It's on your lunchbox! atk!Arch-TK@ircpuzzles/staff/Arch-TK 2018/01/14 06:22:36
koala_man 2013/11/15 12:57:45 2 paste is /call pastebin nobody
yitz_ 2009/07/02 12:05:02 3 paste-cmd is /say The 'paste' command is used to paste together files, putting line 1 with line 1 and so forth. Try the man page for more. nobody
dualbus 2014/11/26 16:32:25 0 pasteban is /say just another member of koala_man's botnet nobody
dtscode 2015/07/09 18:15:11 553 pastebin is /say Paste short snippets (up to 5 lines) in channel. Paste more using https://gist.github.com/ or http://sprunge.us/ (see !sprunge). Please don't use pastebin.com, it's full of ads and has the annoying habit of adding whitespace nobody
Riviera 2014/05/09 07:36:49 843 pastebin.com is /say pastebin.com is ad-supported, and mangles data by converting characters. even the raw version isn't the same as the original data. please use a sane pastebin, such as http://refheap.com https://gist.github.com or http://sprunge.us (''/msg greybot sprunge'' for usage). nobody
koala_man 2013/06/19 11:03:07 92 pastebins is /call pastebin nobody
yitz_ 2009/11/16 08:50:56 2 pastecmd is /call paste-cmd nobody
dualbus 2012/08/05 19:08:41 30 pasteit is /say Paste the *relevant* code: http://sprunge.us/ - http://pastebin.bash-hackers.org/ - https://gist.github.com/ - DON'T use pastebin.com. nobody
igli 2007/08/03 07:41:08 0 pastie is /say Look, some of us just don't like pastebins.. we prefer you to do your own single-stepping. nobody
greycat 2010/08/18 13:07:03 47 path is /say The PATH variable defines where your commands are. Don't do stupid things like GREP=/usr/bin/grep; $GREP foo bar. Just use grep foo bar in the first place. If you aren't sure what your PATH contains, set it yourself. nobody
kurahaupo_ 2015/03/19 03:52:01 2 pathname is /say If a pathname starts with "/" then the starting position is the root directory, otherwise it is the current directory. It is then split into components separated by "/", and taking each component in turn, it moves to the named subdirectory (or any named object, for the last component), except where a component is "..", when it moves up to the parent directory, or "." or empty, when it does not move. nobody
ormaaj 2013/09/25 23:01:11 0 patternfuzz is /say Shell pattern quoting fuzzer https://gist.github.com/ormaaj/6195070 nobody
lhunath 2010/01/07 00:26:50 12 patterns is /say Globs, Braces and Regular Expressions: http://mywiki.wooledge.org/BashGuide/Patterns nobody
Riviera 2014/03/15 09:47:41 33 pax is /say pax is the standard archiver http://www.bash-hackers.org/wiki/doku.php/howto/pax nobody
lhunath 2007/06/23 15:27:29 19 pcre is /say Perl Compatible Regular Expressions: http://perldoc.perl.org/perlre.html cousteau!~cousteau@unaffiliated/cousteau 2018/06/20 02:43:08
greycat 2008/02/25 10:40:52 20 pdf is /say No, there is no fucking PDF of the entire wiki. Because only idiots would want that. camthesaxman!~chatzilla@107-205-135-122.lightspeed.nworla.sbcglobal.net 2016/11/27 22:53:41
geirha 2015/07/28 10:51:44 46 pdfguide is /say PDF version of the BashGuide: http://s.ntnu.no/bashguide.pdf or print http://mywiki.wooledge.org/FullBashGuide to paper or pdf. Also see http://mywiki.wooledge.org/FullBashFAQ nobody
ormaaj 2013/09/12 19:47:17 1 pdksh is /say pdksh was developed as an open-source alternative to AT&T's ksh before it became open-source. pdksh is the default /bin/sh in Interix and Microsoft SUA/SFU. http://www.cs.mun.ca/~michael/pdksh/ -- pdksh has been unmaintained for ~10 years. See !mksh for the current successor. nobody
fr33loader 2013/12/19 14:51:13 3 pe is /say Parameter Expansion expands parameters: "$foo", "$1". You can use it to perform string or array operations: "${file%.mp3}", "${0##*/}", "${files[@]: -4}". They should *always* be quoted. See: http://mywiki.wooledge.org/BashFAQ/073 and "Parameter Expansion" in man bash. Also see http://wiki.bash-hackers.org/syntax/pe. jp!ayy@youlosethega.me 2018/01/17 21:25:07
zendeavor 2013/06/06 22:33:43 4 pe: is /say When not performing substring expansion, parameter expansions including a colon cause bash to test for a parameter that is unset or null. The colon can be omitted to skip the test for a null parameter, resulting in a test for only an unset parameter. nobody
TheBonsai 2011/02/14 21:24:22 11 pebasename is /say Mangling file- and dirnames with parameter expansion: http://wiki.bash-hackers.org/syntax/pe#common_use nobody
mute 2014/10/17 20:09:41 1 pebcak is /call pebkac nobody
redondos 2007/04/11 16:30:17 5 pebkac is /say Problem Exists Between Keyboard and Chair. A humorous way to describe a problem caused by the user, not the system. Similar forms: PEBCAK/PIBCAC/PEBKAM. nobody
izabera 2015/05/27 22:27:26 1 peception is /say No, you can't nest parameter expansions in bash esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:40:18
greycat 2011/04/21 06:26:56 42 penultimate is /say The penultimate (second-to-last) argument of your script is "${@:(-2):1}". The ultimate (final) argument is "${@:(-1)}". For named arrays, the same thing: "${array[@]:(-2):1}" etc. nobody
alyptik!ayy@youlosethega.me 2017/09/02 01:59:17 0 perf is /say http://www.brendangregg.com/perf.html nobody
geirha 2014/05/30 09:32:38 12 perfect is /call itworks jp!ayy@youlosethega.me 2018/01/30 15:58:49
juanmabc 2014/01/10 19:13:43 4 performance is /say You can always try to optimize and that's ok, but mainly, not for bash: http://mywiki.wooledge.org/BashWeaknesses k!~krok@unaffiliated/krok 2017/11/13 16:06:53
trash 2008/11/28 11:41:46 1 perl is /say http://xkcd.com/208/ nobody
e36freak 2012/03/20 12:23:08 4 perm is /call permissions nobody
greycat 2005/09/19 07:21:14 1 permissions is /say http://wooledge.org/mywiki/Permissions nobody
greycat 2008/12/29 13:37:47 2 peurl is /say http://wooledge.org/mywiki/BashFAQ/073 nobody
Stummi 2012/09/21 01:01:21 53 pgrep is /say Use pgrep instead of ps to get PIDs. It saves you from having to parse output that wasn't meant to be parsed. However, finding a process by its name is unsafe. Please look at http://mywiki.wooledge.org/ProcessManagement nobody
greycat 2011/04/27 06:06:07 18 php is /say PHP has its own channel: ##php. Ask PHP questions there. "How do I run a bash script from PHP" is a PHP question, NOT a bash question.~ pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/01/12 13:37:48
oMish 2007/10/26 01:55:03 1 pi is /say echo 'scale=68; a(1)*4'|bc -l nobody
lhunath 2008/07/08 06:30:13 1 pid is /say Process ID: An integer that identifies a single process on a POSIX system. Using PIDs for checking whether a process is running is flawed (they're really not good for anything other than managing the current process' children) because of race conditions and the fact that PIDs are recycled by the kernel. nobody
greycat 2011/07/05 08:32:29 43 pidof is /say You probably want pgrep and pkill, not pidof. Also see http://mywiki.wooledge.org/ProcessManagement nh!~NextHendr@unaffiliated/nexthendrix 2019/09/01 11:29:56
Riviera 2015/02/20 17:46:33 8 pigz is /say I wish gzip would use all my CPUs at same time; oh wait pigz does: http://zlib.net/pigz/ pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/18 22:54:29
kojiro 2007/07/22 07:57:39 40 ping is /say pong fizzie!fis@unaffiliated/fizzie 2015/10/09 01:05:00
ferret 2008/03/19 11:18:00 4 pinky is /say Give your little finger a rest. There's no need to spread your sentence across ten lines. HoloIRCUser1!~holoirc@unaffiliated/tires 2018/07/03 21:59:35
lhunath 2008/02/20 00:42:32 59 pipe is /say Pipes connect the (standard) output of one command with the (standard) input of another. The command on the right hand side is executed in a subshell. Avoid pipes if you can for performance reasons and possibly unintended side-effects introduced by this subshell. nobody
e36freak 2012/02/16 13:27:40 36 pipefail is /say ''set -o pipefail'': if pipefail is enabled, any pipeline's return status is the value of the last (rightmost) command to exit with a non-zero status, or zero if all commands exit successfully. nobody
greycat 2012/02/16 13:24:55 24 pipestatus is /say Bash has a PIPESTATUS array which contains all the return codes of all the commands from the most recent pipeline. sh doesn't, but see http://pipestatus.sf.net nobody
lhunath 2008/09/01 00:35:07 2 pitfalls is /say http://wooledge.org:8000/BashPitfalls qwename!~qwename@d154-20-114-183.bchsia.telus.net 2017/01/11 11:43:50
kojiro 2007/10/18 09:05:19 0 pithy is /say You can't solve a problem you can't describe. nobody
greycat 2006/01/24 06:18:29 83 plonk is /say The sound a name makes when it hits a kill file (or /ignore list). kg!~krok@unaffiliated/krok/x-1434802 2017/10/27 15:39:58
kwtm 2011/04/27 12:03:00 9 plonk2 is /say After reading what you said, my head flopped forward in astonishment striking the desktop with a loud "PLONK!" Thanks to you I have damaged my circuitry, and my memory has been overwritten with endless copies of Charles Babbage's plaintive quotation: "I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question." Now attempting to restore from backup ... kg!~krok@unaffiliated/krok/x-1434802 2017/10/27 15:40:07
yitz_ 2011/02/21 22:58:54 0 plot is /say while IFS=',' read x y; do tput hpa "$x"; tput vpa "$y"; printf 'x'; done < foo.csv # by lhunath nobody
yitz_ 2011/02/28 10:23:38 15 plz is /say If you say plz because it's shorter than please, we'll say no because it's shorter than yes. http://yaku.dk/s/irc/dont-use-thx-sry-plz.txt nobody
greycat 2006/09/19 08:27:05 12 pm is /say http://wooledge.org/mywiki/ProcessManagement nobody
go|dfish 2008/04/09 05:08:34 2 pofd is /say Posters of fake data are a big pile of ''telnet gw.boston.ru'' protege!~shynoob@182.59.209.11 2017/02/05 00:52:45
igli 2007/10/17 22:04:12 3 pointers is /say http://xkcd.com/138/ nobody
e36freak 2013/05/03 14:59:45 58 pony is /say On parsing markup with regular expressions: http://xrl.us/p0ny nai!~naim@monade.li 2019/04/27 12:01:33
greycat 2011/05/23 11:28:23 6 pop is /call shift pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/12 12:38:44
greycat 2013/04/16 13:53:13 7 porn is /say for ((i=1; i<100; i++)); do printf -v tmp %03d "$i"; wget http://pornsite/image-"$tmp".jpg; sleep 10; done fluter!~fluter@fedora/fluter 2016/08/21 23:58:50 sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/01/20 07:22:38
greycat 2011/06/30 13:40:25 93 porn2 is /say i=1; for f in ./*.jpg; do printf -v num %05d $((i++)); mv "$f" $num.jpg; done god!dtscode@freenode/weird-exception/bartender/learnprogramming.nchambers 2016/08/21 23:29:08
greycat 2011/07/20 12:33:14 35 porn3 is /say for dir in */; do (cd "$dir" || exit; for f in *.rar; do unrar "$f" || break; done && rm *.rar *.r[0-9][0-9]); done kg!~krok@unaffiliated/krok/x-1434802 2017/10/27 15:40:35
mr_edgecase 2013/08/19 18:00:12 10 porn4 is /say You outta be ashamed! nobody
gniourf_gniourf 2015/05/15 15:00:07 1 porn981 is /say https://xkcd.com/981/ nobody
geirha 2010/11/26 16:04:54 7 portability is /say Portability is important. Your script should, if at all possible, run on as many different platforms as possible. Avoid Linux-specific commands like seq(1), GNU-specific command flags like "find ... -or", and so on. See http://www.gnu.org/software/hello/manual/autoconf/Limitations-of-Usual-Tools.html nobody
lhunath 2012/03/27 01:15:41 1 posix is /say The POSIX standard defines what any modern unix should support. Use just POSIX external commands and options to make portable scripts. See http://www.opengroup.org/onlinepubs/9699919799/utilities/contents.html or search http://pubs.opengroup.org/cgi/kman4.cgi?value=[query] nobody
lhunath 2012/06/18 05:45:55 6 posix-sh is /say http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18 nobody
kwtm2 2011/07/05 21:26:55 4 posix2 is /say A Posix-compliant *shell* recognizes the set of all Posix features (and possibly also non-Posix features, as in the case of bash). A Posix-compliant *script* is limited to only Posix features. It's possible for a Posix-compliant shell such as bash to handle non-Posix-compliant scripts (e.g. scripts that use bash-only features). nobody
ormaaj 2013/01/16 20:20:24 32 posixlocal is /say sh# f() { if ! ${_called_f+false}; then for x; do printf '%s, ' "$x"; done; else _called_f= x= command eval '{ typeset +x x; } 2>/dev/null; f "$@"'; fi; }; x='outside f'; printf "$x, "; f 1 2 3; echo "$x" nobody
ormaaj 2013/07/16 21:50:53 5 posixlocal2 is /say http://stchaz.free.fr/locvar.sh nobody
lhunath 2014/06/18 14:09:08 4 posixsh is /say Try to stick to POSIX for all externals but do NOT limit your shell code to POSIX sh: Depend on bash and use its features to the fullest instead. POSIX sh is so primitive you can only get things done reliably through hacks, if at all. oldlaptop!~quassel@45.63.78.126 2019/05/16 14:00:46
TheBonsai 2008/07/29 09:26:47 1 posparam is /say http://bash-hackers.org/wiki/doku.php/scripting/posparams nobody
TheBonsai 2008/01/18 14:54:01 1 posparams is /say Handling positional parameters (arguments on commandline): http://bash-hackers.org/wiki/doku.php/scripting/posparams nobody
kojiro 2007/11/09 07:27:34 4 pp is /say Positional parameters, such as $1, $2, $3, or "$@" for all of them. See http://bash-hackers.org/wiki/doku.php?id=scripting:posparams nobody
emg 2014/02/04 09:54:21 2 practice is /call theory nobody
e36freak 2012/06/18 13:01:06 11 practices is /say http://mywiki.wooledge.org/BashGuide/Practices doppel!~chatzilla@ip70-170-42-83.lv.lv.cox.net 2017/08/08 03:57:26
TheBonsai 2008/11/24 09:26:11 0 prargs is /say Print an argument list for debugging purposes: http://bash-hackers.org/wiki/doku.php/snipplets/prargs nobody
yitz_ 2010/07/03 22:33:39 3 prayer is /say eval and prayer can make things work sometimes nai!~naim@monade.li 2019/04/08 10:54:58
oMish 2007/09/12 08:07:04 1 prepare is /say Avoid throwing a hastily typed question into this help channel. Prepare your question in advance in the editor. Word it carefully. Make sure those who read it will understand your request. Remove unnecessary information. Add all necessary information. Then paste it into the channel. FreedomLover!~Unknown@28-117-179-94.pool.ukrtel.net 2016/12/13 11:27:13
izabera 2014/12/10 23:45:15 36 prepend is /say To prepend a string to a file, use cat with the stdin flag: cat - origfile <<< "string" > newfile && mv newfile origfile nobody
lhunath 2014/05/14 10:39:45 21 pretty is /say "Pretty-print" your bash code: pretty() { printf 'pretty(){ %s\n }; declare -f pretty' "$(cat)" | bash; } ## Usage: pretty < myscript sandsnw!~textual@cm-84.212.99.12.getinternet.no 2018/05/27 14:04:35
juanmabc 2013/01/28 17:10:33 2 pride is /say bash can do it on its own nobody
e36freak 2013/05/07 23:24:45 1 print_status is /say print_status() { printf '%*s\r%s\n' "${COLUMNS:-$(tput cols)}" "$2" "$1"; } # usage: print_status LEFT RIGHT vclam!~unknown@c-24-11-122-3.hsd1.ut.comcast.net 2016/12/05 07:12:20
ormaaj 2014/01/21 21:19:47 2 printfexploit is /say # bash -c 'b=$2; printf $1' _ '-v _[b] foo' '_[$(echo dont let this happen >&2)]' nobody
kojiro 2008/03/12 11:30:14 3 privmsg is /say Got a bunch of questions for the bot? Privmsg me. kandide!~krokbot@unaffiliated/krok/bot/kandide 2017/11/11 19:32:30
ormaaj 2013/01/22 21:58:33 44 problem is /say Some people, when confronted with a problem, think ``I know, I'll use regular expressions.'' Now they have two problems. protege!~shynoob@182.59.209.11 2017/02/05 00:52:56
fr33loader 2013/01/07 14:33:33 13 professor is /say "Hey prof, do us all a favor and stop handing out ridiculous homework assignments. Oh, and while you're at it, encourage the idiots to pursue different career paths!" esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:53:45
jmbc 2015/06/01 12:36:01 1 profiling is /say PS4 To The Rescue, http://stackoverflow.com/questions/5014823/how-to-profile-a-bash-shell-script jalt!~jalt@wireless-223-107.wireless.umbc.edu 2016/02/09 12:30:01
yitz_ 2008/06/11 09:46:10 26 progress is /say See faq 44 -> http://wooledge.org/mywiki/BashFAQ/044 -- How do I create a progress bar? nobody
greycat 2011/03/22 10:47:31 1 prompt is /say "\u@\h \w\$"? These are explained in man bash, under PROMPTING. Or see http://www.ibm.com/developerworks/library/l-tip-prompt/ nobody
koala_man 2014/10/16 14:46:18 3 prompt_command is /say PROMPT_COMMAND: If set, the value is executed as a command prior to issuing each primary prompt. (man bash) nobody
e36freak 2012/12/04 08:05:33 1 prompting is /call prompt nobody
redondos 2007/06/07 20:36:40 1 proof is /say We Want Proof. esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:49:52
lhunath 2012/08/18 07:39:02 1 prosper is /say While we tear your code to shreds and criticize it, keep in mind we do so only because we love you and want you to prosper, not fail! Make this a learning opportunity and try not to take it personal. :-) Amun_Ra!~amun-ra@retro.rocks 2016/10/12 11:08:37
lhunath 2010/12/03 03:20:01 18 prune is /say Stop find from descending a tree: find . ! '(' -name do-not-descend -prune ')' -print ## See http://mywiki.wooledge.org/UsingFind nobody
ormaaj 2015/02/11 15:12:09 2 prune2 is /say A hard problem: prune matched subtrees, also discard the root of the search and roots of non-pruned subtrees: mkdir -p tmp/{aa,bb}; touch tmp/{aa/aa,bb/{aa,bb}}; find ./tmp \( -type d -name aa \) -prune -o \( -path './tmp/*/*' -print \) raisondetre!~ZeNEX@opein-inet.lpa.idec.net 2016/08/10 04:23:34
ormaaj 2013/09/07 16:11:24 15 ps is /say Don't use ps(1) in scripts. Its output can't be reliably parsed, and will often leave you vulnerable to TOCTOU (race) bugs. Use $! to get the PID of the last asynchronous command. See http://mywiki.wooledge.org/ProcessManagement for anything more complex. nai!~naim@monade.li 2019/04/12 03:24:07
greycat 2010/03/09 13:00:36 0 ps-aux is /say NEVER, EVER write "ps -aux". EVER. If you see some script that uses that syntax, throw the entire script away. BSD ps(1) syntax does *not* use a hyphen. In hybrid systems (Linux, AIX, etc.) they hyphen indicates the use of System V ps(1) syntax rather than BSD. It should be "ps aux" or "ps auxw". nobody
greycat 2010/03/09 13:00:43 0 ps-auxw is /call ps-aux nobody
llua 2015/07/18 16:08:49 18 ps1 is /say The value of $PS1 is printed as the prompt when bash is running interactive. Note that any characters that do not advance the cursor (eg. colors) must be in \[ \] and exporting PS1 is almost always an mistake. See man bash, PROMPTING nobody
neurolysis 2011/06/08 09:50:06 2 ps2 is /say The value of $PS2 is printed (after expansion) as the secondary prompt for more data when bash is running interactive. See man bash, under PROMPTING. nobody
neurolysis 2011/06/08 09:50:07 1 ps3 is /say The value of $PS3 is printed (without expansion) as the prompt for the select command. See man bash, under PROMPTING. nobody
neurolysis 2011/06/08 09:50:09 6 ps4 is /say The value of $PS4 is printed (after expansion) before each command bash displays during an execution trace. See man bash, under PROMPTING. # http://bash-hackers.org/wiki/doku.php/scripting/debuggingtips#making_xtrace_more_useful nobody
geirha 2013/08/06 11:34:14 2 psgrep is /say psgrep() { ps -ef | { IFS= read -r h; printf '%s\n' "$h"; grep "$@"; }; } # for interactive use only nobody
TheBonsai 2008/11/28 09:17:57 0 pstree is /say Bash in the UNIX process tree (simple): http://bash-hackers.org/wiki/doku.php/scripting/processtree nobody
emg 2014/07/16 15:53:28 20 psychic is /say Nope, still not psychic. clumsy_boy!~leoni@181.26.8.127 2018/01/21 03:44:49
geirha 2014/08/08 11:58:32 0 psychic2 is /say Oh wait, I'm getting something. Anyone know someone with N in their name? ... I also see an O and a P. Ah! NOPE! nobody
kurahaupo 2014/09/29 17:47:37 5 psychotic is /say /me runs amok with a chainsaw, hewing down newbies and veterans alike Aequus!~Aequus@132.ip-51-254-37.eu 2018/05/06 16:07:04
ormaaj 2012/08/16 19:04:35 7 pty.spawn is /say http://mywiki.wooledge.org/BashFAQ/078#Don.27t_rely_on_.2BAC8-dev.2BAC8-tty_for_security nobody
kwtm 2011/03/26 13:22:30 0 punct is /say Pay attention to punctuation and spaces. If someone says i="$Var"; that is NOT the same as i = $Var nobody
ormaaj 2012/12/20 20:09:45 5 push is /say https://github.com/vaeth/push/ See also: http://mywiki.wooledge.org/BashFAQ/050 qwename!~qwename@unaffiliated/qwename 2017/08/31 04:44:14
izabera 2015/05/15 00:18:14 10 pv is /say pv - Pipe Viewer - is a terminal-based tool for monitoring the progress of data through a pipeline. It can be inserted into any normal pipeline between two processes to give a visual indication of how quickly data is passing through. See https://www.ivarch.com/programs/pv.shtml nobody
BlastHardcheese 2013/05/21 21:56:53 6 pwd is /say PWD is a builtin variable in all POSIX shells that contains the current working directory. pwd(1) is a POSIX utility that prints the name of the current working directory to stdout. Unless you're writing for some non-POSIX system, there is no reason to waste time executing pwd(1) rather than just using PWD. jan6!~jan6@tilde.team/users/jan6 2019/07/06 12:54:32
greycat 2013/03/05 09:55:12 1 pwgen is /say pwgen <http://sourceforge.net/projects/pwgen/> generates passwords. Use that instead of whatever Rube Goldberg contraption you were trying to make. nobody
bronze 2010/01/28 07:36:54 15 python is /say Bash is not spelled "python" nobody
TheBonsai 2007/06/15 08:03:06 2 qdb is /say http://forum.bash-hackers.org/index.php?board=12.0 nobody
e36freak 2013/03/19 10:05:38 4 qefe is /say "$QUOTE" "$EVERY" "$FUCKING" "$EXPANSION" pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/02/07 04:09:36
greycat 2013/05/22 13:49:29 11 qefs is /say "$Quote" "$Every" "$Fucking" "$Substitution" nobody
e36freak 2012/11/26 12:07:38 4 query is /say please /msg me for personal use, don't fill the channel with factoids for yourself nobody
greycat 2010/04/27 12:02:48 68 question is /say Ask questions. Don't just paste 200 lines of code on a web page and say "HERE MY KODE <URL> WHATZ RONG". Describe the problem, clearly and concisely. If necessary, give the SMALLEST sample code that demonstrates the problem. nobody
greycat 2010/07/02 12:01:33 190 questions is /call question nobody
BlastHardcheese 2012/06/09 17:21:05 19 quicksort is /say swap(){ local t;t=${a[$1]};a[$1]=${a[$2]};a[$2]=$t;};partition(){ local c p x;p=${a[$3]};c=$1;swap "$2" "$3";for((x=$1;x<$2;x++));do if((${a[x]}<$p));then swap "$x" "$c";((c++));fi;done;swap "$2" "$c";n=$c;};quicksort(){ if(($1>=$2));then return;fi;local i n;i=$((($1+$2)/2));partition "$1" "$2" "$i";quicksort "$1" "$((n-1))";quicksort "$((n+1))" "$2";}; #usage: quicksort start end; a is array to sort nil!~n@monade.li 2019/08/17 06:36:47
juanmabc 2012/06/25 05:27:25 31 quiet is /say Bash is perfect. No one has bash issues. nobody
e36freak 2013/01/09 08:07:33 108 quote is /call quotes nobody
lhunath 2010/04/23 04:01:09 4 quotebreak is /say First, quote all your expansions ("$foo", "$(foo)", "`foo`"). When things break; the fix is not to remove the quotes but to parse your data properly! (eg. use ''while read'' instead of ''for'') nobody
koala_man 2009/05/05 06:11:54 3 quotedemo is /say # var=$'foo\nbar'; echo $var; echo "$var" nobody
ormaaj 2012/04/06 20:06:57 15 quotenotwhen is /call quotewhennot nobody
lhunath 2014/06/03 07:27:24 15 quoteoptional is /say You should almost always "double quote your $expansions". There are a few cases where quotes are optional, though: in assignments that contain no literal spaces (eg. foo=$bar), inside [[ except for the RHS (eg. [[ -e $file ]]) and inside complex PEs that are already quoted (eg. echo "${file//$USER/bob}"). nobody
lhunath 2014/06/26 10:04:53 8 quotes is /call quotewhen kg!~krok@unaffiliated/krok/x-1434802 2017/10/30 17:08:19
e36freak 2011/03/09 09:35:16 3 quoteswhen is /call quotewhen nobody
b317 2015/01/10 02:32:56 1061 quotewhen is /say "Double quote" every literal that contains spaces/metacharacters and _every_ expansion: "$var", "$(command "$var")", "${array[@]}", "a & b". Use 'single quotes' for code or literal $'s: 'Costs $5 US', ssh host 'echo "$HOSTNAME"'. See http://mywiki.wooledge.org/Quotes , http://mywiki.wooledge.org/Arguments and http://wiki.bash-hackers.org/syntax/words . kg!~krok@unaffiliated/krok/x-1434802 2017/10/30 17:08:19
lhunath 2011/05/23 05:44:23 38 quotewhennot is /say Quotes on expansions are almost always safest, even if sometimes unnecessary. The ONLY times you do NOT want quotes: ${var:+ .. } (quote expansions inside '..', though!), right-hand side of [['s = and =~ (if you want a pattern match), inside arithmetic context (( "$foo" )) -> (( foo )). nobody
lhunath 2011/01/21 01:13:20 8 quotewhy is /say Unquoted $expansions (except for in keywords or assignments) are always bugs (subjected to word splitting and pathname expansion) and are also twice as slow to expand. If you think you *need* an unquoted expansion: You're wrong. Write better logic or learn about arrays or functions. nobody
lhunath 2009/07/01 06:36:54 131 quoting is /say Quoting 101: Always use "double quotes" around expansions: "$foo", "$(awk ..)". Use 'single quotes' to prevent even bash expansion: awk '$1 == foo'. You "can 'nest'" quotes but can't put literal single quotes in single quotes; so use: 'Don'\''t forget to quote!'. mujjingun!uid228218@gateway/web/irccloud.com/x-uid228218 2017/12/12 03:20:05
SavetheWorld 2007/09/02 16:24:58 1 r00t is /say lol jp!ayy@youlosethega.me 2018/01/13 16:12:21
greycat 2010/06/17 13:44:15 1 race is /say http://mywiki.wooledge.org/RaceCondition nobody
igli 2007/05/18 02:50:21 1 raft is /say Read A Fucking Tutorial! We are NOT here to teach you the very basic beginner steps of bash scripting. You are expected to know basic stuff like "how do I redirect a command's output to a file" and "what's a glob" before you come here. There are links in the channel /topic. Use them BEFORE asking anything! protege!~shynoob@182.59.209.11 2017/02/05 00:53:10
koala_man 2014/02/28 14:41:06 29 rand is /say rand() { local max=$((32768 / $1 * $1)) r; while (( (r=$RANDOM) >= max )); do :; done; echo $(( r % $1 )); } ## Returns unbiased random number from 0 to ($1-1) inclusive, $1 <= 32768 nobody
greycat 2008/05/14 13:31:17 14 random is /say See http://wooledge.org/mywiki/BashFAQ/026 esselfe!~bsfc@unaffiliated/esselfe 2019/09/03 15:26:25
kojiro 2012/02/01 17:14:57 45 randomanswer is /say # answer=(yes no maybe); echo "${answer[RANDOM % ${#answer[@]}]}" nobody
Tramp 2010/06/10 15:35:27 15 randomstring is /say randomstring() { LC_CTYPE=C tr -dc '[:print:]' < /dev/urandom | dd bs="${1:-16}" count=1 2>/dev/null; echo; } # usage: var=$(randomstring [LENGTH]) nobody
NaNDude 2015/03/30 03:59:48 20 rc is /say http://web.archive.org/web/20080828125913/http://www.faqs.org/faqs/usenet/faq/part1/section-6.html -- What does "rc" at the end of files like .newsrc mean? nil!~n@monade.li 2019/05/21 12:11:42
lhunath 2013/07/24 10:55:48 152 re is /call regex jp!ayy@youlosethega.me 2018/07/08 17:15:37
TheBonsai 2010/04/23 08:59:31 270 read is /say help read <ENTER> read http://wiki.bash-hackers.org/commands/builtin/read TomyWork!~tomy@85.199.84.100 2018/03/22 06:58:04
ormaaj 2013/02/04 09:08:44 3 read-p is /say Bash's read -p prints a prompt before reading input. It's incompatible with most Korn shells and Zsh, which use -p for a different purpose. It's also not specified by POSIX. Consider something like this (but note they aren't quite identical): [[ -t 0 ]] && printf %s 'Enter some input: ' >&2; read -${BASH_VERSION+e}r myInput jp!ayy@youlosethega.me 2018/01/26 00:21:10
BlastHardcheese 2013/09/24 11:06:01 31 read-r is /say By default, if ''read'' reads a line of input terminated by a backslash (\), it will *continue* reading lines of input until the first line not terminated by "\", or it hits EOF and then concatenate those lines into a single line. This is a dumb misfeature. So *always* use the -r option with ''read'', unless you know you have a case when you want the default behavior, or when using the bash-only ''read -e''. nobody
lhunath 2007/08/19 13:07:58 2 readability is /say The readability of your code is almost just as important as the result of your code! Go read http://wooledge.org/mywiki/BashGuide#Readability nobody
izabera 2015/04/12 16:13:43 3 readarray is /call mapfile nobody
lhunath 2010/11/27 11:14:06 10 readfind is /say Run ... for every file find(1) matches: while IFS= read -r -d '' file; do ...; done < <(find /path -print0) ## See http://mywiki.wooledge.org/UsingFind nobody
fr33loader 2013/03/04 12:28:36 8 reading is /say Reading, it's not just for breakfast cereal anymore. nobody
lhunath 2014/06/27 20:35:30 33 readlines is /call whileread TomyWork!~tomy@85.199.84.100 2018/03/22 06:58:08
Stummi 2012/10/10 05:55:06 5 readwrite is /say in general you can't read from and write to the same file at the same time. "sort file > file" won't work. If your tool has not an in-place variant, use a temporary file Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/30 04:37:46
greycat 2013/05/01 12:44:44 3 realhomework is /say <linuxnewb> We got a challenge on our university where we are forced to input commands without using space character or "minus" character nobody
ormaaj 2014/10/07 19:36:59 2 reattach is /call reptyr nobody
izabera 2014/12/04 17:31:52 5 recursion is /say See: !recursion nobody
ormaaj 2012/09/07 17:46:47 375 redir is /say Redirections: http://mywiki.wooledge.org/Redirection Yukiku!~Dhs92@unaffiliated/yukkii 2016/03/11 07:55:34
lhunath 2012/08/23 06:31:22 26 redir2eng is /say x>y: make FD x write to file y. x>&y: make FD x write to where FD y is writing now. If x is omitted, use 1. If y is -, close x. Use < to read instead of write. Exercise: exec 3>&1 >mylog; echo moo; exec 1>&3 3>&- nobody
lhunath 2012/07/28 16:46:32 6 redir2var is /say Try thinking of FDs as variables. Change > into = and >& into =$. 0=keyboard; 1=terminal; 2=logfile; command 2>&1 1>otherlog; does 2=$1 (so 2=terminal) and 1=otherlog. At the end, command's 0=keyboard, 1=otherlog and 2=terminal nobody
e36freak 2011/04/19 12:45:22 79 redirect is /call redirection Yukiku!~Dhs92@unaffiliated/yukkii 2016/03/11 07:55:34
zendeavor 2013/08/30 05:22:51 117 redirection is /call redir Yukiku!~Dhs92@unaffiliated/yukkii 2016/03/11 07:55:34
greycat 2012/01/11 12:29:25 20 redirections is /call redirection nobody
TheBonsai 2007/10/24 20:19:25 2 redirorder is /say Redirection order: http://bash-hackers.org/wiki/doku.php?id=syntax:redirection#multiple_redirections nobody
greycat 2009/03/02 07:11:59 91 redirtut is /call redir nobody
greycat 2007/08/29 12:34:16 2 redo is /say NO, bash does NOT have anything like perl's "redo" block. Which as far as I can tell is simply a "goto the top of the loop". And no, bash doesn't have goto either. k!~krok@unaffiliated/krok 2017/11/25 20:49:43
lhunath 2014/10/31 08:21:44 2 ref is /say http://www.gnu.org/software/bash/manual/bashref.html protege!~shynoob@182.59.209.11 2017/02/05 00:53:28
sikilpaake 2012/10/27 14:30:08 5 refactorlessplease is /say refactoring to achieve clarity risks simultaneously achieving a time-irreversal opacation of the problem statement http://www.computer.org/csdl/proceedings/wicsa/2005/2548/00/25480159-abs.html nobody
lhunath 2008/07/06 01:24:13 1 reference is /say Bash Quick Reference: http://wooledge.org:8000/BashSheet nobody
wonderfrog 2006/12/06 14:34:54 1 reframe is /say Reframe your question. When I do X, Y happens. I expected Z to happen. nobody
lhunath 2013/07/24 10:55:38 220 regex is /say Regular Expressions are used to *match* certain patterns in strings. They come in several flavors (BRE, ERE, PCRE, and more). Bash only supports EREs (using [[ string =~ pattern ]]). Sed uses BREs. See !ere, !bre, !pcre, http://mywiki.wooledge.org/RegularExpression nobody
geirha 2012/08/25 03:55:17 5 regexhtml is /say http://stackoverflow.com/a/1732454/1524545 nobody
lhunath 2013/07/24 10:55:54 36 regexp is /call regex nobody
ormaaj 2012/06/18 01:34:06 2 regular is /say What are regular files? Regular files are regular files. Are symlinks regular files? No. Regular files are regular files. Are FIFOs regular files? No. Regular files are regular files. Are? ...No nobody
greycat 2007/04/06 10:10:48 11 relax is /say If someone takes you to task for your ignorance, and you reply by asking them to "relax", what you are really saying is, "Yes, I am ignorant, and I intend to remain that way. I shall not read the fine manual, nor shall I exert any efforts whatsoever to improve myself. I shall continue to be a leech upon the IRC channel." cr1t1cal!~chiken@60-242-215-61.static.tpgi.com.au 2017/01/03 17:10:45
ferret 2010/05/02 10:01:36 160 rename is /say rename(1) could be one of three or four different programs -- or you might not have it on your system. A loop or find expression that uses mv is safer. See also !faq rename nil!~n@monade.li 2019/09/01 15:04:15
tuxdev 2010/01/26 08:35:16 3 renault is /say I tried to buy a Renault in a Renault shop, but there were no salesmen available, so I came into this Ford shop. Why won't you sell me a Renault?! Ellenor!~Ellenor@unaffiliated/ellenor 2017/09/10 01:12:56
greycat 2008/03/04 11:40:20 25 repeat is /say repeat() { local i n; n=$1; shift; for ((i=1; i<=n; i++)); do "$@"; done; } oldlaptop!~quassel@45.63.78.126 2019/06/02 16:33:44
greycat 2009/04/10 09:10:26 36 replace is /say http://mywiki.wooledge.org/BashFAQ/021 -- How can I replace a string with another string in all files? pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/16 16:38:15
e36freak 2011/06/29 19:20:46 6 reply is /say REPLY is the default variable that read populates, when not supplied with one. The trimming of leading and trailing IFS whitespace does not occur, when used as such. See ''help read'' and http://wiki.bash-hackers.org/commands/builtin/read nobody
ormaaj 2014/10/07 19:18:37 5 reptyr is /say ptrace-based hack that forces modification of a process's controlling terminal. https://github.com/nelhage/reptyr alyptik!ayy@youlosethega.me 2017/09/01 03:37:13
savetheWorld 2007/07/19 06:03:44 1 requirements is /say "<greycat> If you had simply TOLD US YOUR REQUIREMENTs, I could probably have written code to DO THAT INSTEAD, in about 20 seconds. <greycat> But NO, you have to be all hand-wavey and vague. *PLONK*" esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 15:47:20
lhunath 2013/08/29 07:09:21 79 requote is /say Prepare literal data for injection into a regular expression: requote() { sed 's/[^^]/[&]/g; s/\^/\\^/g' <<< "$1"; }; grep "^$(requote "$input")" nobody
e36freak 2011/12/13 08:42:43 2 reserved is /say The following words are recognized as reserved when unquoted and either the first word of a simple command or the third word of a case or for command: ! case do done elif else esac fi for function if in select then until while { } time [[ ]] dorp!~dorp@bzq-84-111-138-241.cablep.bezeqint.net 2016/07/13 01:09:53
greycat 2009/12/11 10:09:47 69 return is /call exit Jumpforce!~alarm@unaffiliated/jumpforce 2018/03/07 00:28:45
igli 2008/01/08 04:28:48 0 reuse is /say The reason we tell you how to deal with any possible filename or variable is so that your script functions can be reused. nobody
ormaaj 2014/05/19 21:01:14 0 rfc3339 is /say A good, simple profile of iso8601, compatible with many others. With (GNU) date: «date --rfc-3339=seconds» or «date '+%Y-%m-%d %H:%M:%S%:z'». Configure your syslog-ng.conf with: «ts_format(rfc3339)». www.ietf.org/rfc/rfc3339.txt nobody
kojiro 2007/06/07 19:01:45 2 rhetorical is /say Does this look like a rhetorical question to you? nobody
koala_man 2013/11/27 15:39:03 5 rhs is /say # var="[a-z]"; [[ $var = $var ]] || echo "this is false, and why you should quote the RHS of = in [[ ]]" nobody
ivazquez 2007/08/15 18:28:47 6 right is /say It's only ignorance the first time. After that, it's stupidity. nil!~n@monade.li 2019/05/20 05:50:18
bronze 2009/06/04 11:40:21 1 rightstr: is /say Bash does the "rightstr" operation using the PE capabilities. here is a Bash rightstr function: rightstr(){ echo ${1:$(( 0 - $2 ))} ; } Usage is rightstr "somestring" <count from the end> To use that function try rightstr "abcdefg" 4 ; nobody
e36freak 2012/04/18 08:37:05 26 rlart is /say Recursive version of ls -lart (requires GNU find and sort): find . -type f -printf '%T@ %TY-%Tm-%Td %TX %p\0' | sort -zn | while read -rd '' _ day time path; do printf '%s %s %s\n' "$day" "${time%.*}" "$path"; done nobody
greycat 2011/05/24 12:59:04 21 rlatest is /say Recursive latest, requires GNU find + sort: rlatest() { local file; find "${1:-.}" -type f -printf '%T@ %p\0' | sort -znr | { read -rd ' ' _; IFS= read -rd '' file; printf '%s\n' "$file"; }; } nobody
greycat 2011/03/25 10:42:46 20 rm is /say Don't override the rm command. You'll teach yourself bad habits and lose data some day when you use a different machine or login account. If you must back up files when deleting them, make a new command: del() { mv "$@" ~/.backup/; } or similar. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/30 16:36:27
ormaaj 2013/06/11 20:59:51 13 rndstr is /say https://gist.github.com/ormaaj/3929316 nai!~naim@monade.li 2019/04/08 09:55:05
greycat 2005/09/19 10:42:50 1 rng is /say http://wooledge.org/~greg/dilbert.gif nobody
ferret 2009/02/05 08:25:35 0 rpc is /say for h in host1 host2 host3; do ssh "$h" bash < localscript; done nobody
Keanu73 2014/10/21 10:41:01 3 rsyncchannel is /say #rsync nobody
igli 2007/06/17 08:55:39 1 rtf is /say Read the FAQ! You are hearing this because !faq<n> or !faq <term> has been used to help you several times. And yes, I respond to pms (no ! required ;) protege!~shynoob@182.59.209.11 2017/02/05 00:53:42
izabera 2015/05/19 14:57:38 2 rtff is /say read the fine factoid esselfe!~bsfc@unaffiliated/esselfe 2017/08/23 18:15:12
sjohnson 2013/09/08 17:05:59 4 rtft is /say *see topic* protege!~shynoob@182.59.209.11 2017/02/05 00:54:04
greycat 2006/09/29 11:32:17 1 rtfu is /say READ THE FUCKING URL! protege!~shynoob@182.59.209.11 2017/02/05 00:54:18
igli 2007/06/25 07:11:03 5 rude is /say If you think we're rude, have a look at http://mikeash.com/getting_answers.html and bear in mind we have to deal with those sorts of issues every day. Try: /msg greybot answers nai!~naim@monade.li 2019/04/08 10:57:10
capt_mercaptan 2014/08/01 12:29:16 2 ruhdoh is /say A portmanteau of Scooby's "Ruh roh" and Homer's "D'oh!" latch!~latch@unaffiliated/latch 2016/10/25 08:13:11
David-A 2014/08/01 12:28:16 1 ruhroh is /say "Ruh roh" is Scoby Doo's equivalent of Homer Simpson's "D'oh!" latch!~latch@unaffiliated/latch 2016/10/25 08:12:51
izabera 2015/09/21 13:13:59 0 rule34 is /call porn nobody
dualbus 2014/03/17 07:22:41 10 rules is /say First rule of #bash, UMQ. Second rule of #bash, don't fucking ignore Riviera. koisoke!xef4@epilogue.org 2018/01/26 22:57:33
yitz_ 2009/09/30 08:34:08 3 runkill is /say To run a command and then kill it (after some delay), run the cmd in the background, wait some time and kill it: cmd & sleep 60; kill $! beeman!~beeman@unaffiliated/beeman 2017/04/15 14:15:58
Stummi 2012/10/10 05:54:12 1 rw is /call readwrite Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/30 04:37:46
lhunath 2008/05/30 01:29:52 0 rwpitfall is /say command < file > file: ''file'' will get truncated because '> file' truncates a file before writing to it. Because of this, '< file' won't be able to read anything from it, command won't get any input, and probably won't give any output. nobody
kurahaupo 2014/07/02 19:31:56 5 sad is /say /me quietly sobs in the corner mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/03 04:59:43
greycat 2014/09/25 10:17:30 1 savetopic is /say FAQ: http://mywiki.wooledge.org/BashFAQ | Guide: http://mywiki.wooledge.org/BashGuide | ref: http://xrl.us/bhk9ww | http://wiki.bash-hackers.org/ | http://mywiki.wooledge.org/Quotes | Check your script: http://www.shellcheck.net/ | Devel: http://xrl.us/bmodjy | mailing list: https://lists.gnu.org/mailman/listinfo/help-bash nobody
lhunath 2014/07/21 09:25:23 28 scope is /say All variables are global to the script by default. local/declare/typeset inside a function makes the variable local to the function. Use subshells (eg. (), $(), ...) if you need an explicit scope. http://wiki.bash-hackers.org/scripting/basics#variable_scope nobody
Stummi 2013/08/21 04:29:21 18 scp is /say If you have problems with scp, stop using scp and just use ssh directly. It's far more robust than scp is. tar cf - dir | ssh user@host 'cd /somewhere && tar xf -' nobody
pgas 2008/11/02 05:11:56 20 screen is /say screen has its own channel: #screen nobody
greycat 2010/09/15 07:33:21 1 screen-x is /say screen(1) lets you attach to a pseudoterminal multiple times. Run "screen", then in another window, run "screen -x". Do stuff. Great for remote teaching, etc. Damien22!~Damien@61.173.41.215 2016/02/06 06:41:39
yitz_ 2013/03/29 10:28:03 1 screenshot is /say Please do not use a screenshot to share text. Use a pastebin. Anything that happens in the terminal is text. Anything that involves graphics is not bash related. aozt!~aozt@unaffiliated/aozt 2019/08/07 17:57:53
dualbus 2015/04/03 13:32:27 25 script is /say script(1) allows you to record an interactive session in a terminal. Also, you can use it instead of expect(1) for simple tasks, because it creates a pty. zalt!~lambda443@unaffiliated/lambda443 2019/04/29 12:40:57
sjohnson 2013/07/18 12:15:38 6 scriptinglanguage is /say Consider using perl, python, or ruby for such a task. nobody
yitz_ 2014/07/11 19:32:29 2 seconds is /say $SECONDS expands to the amount of seconds since your shell was started. Can be useful for timing script operations. Note you can do SECONDS=0 and it starts counting from 0 again! nobody
nDuff 2012/12/19 08:08:29 5 sed is /say sed is a Stream Editor, used to filter output. It's NOT primarily useful for editing files (use ed, ex or perl instead). Ask sed questions in ##sed. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/06 17:01:21
greycat 2014/09/11 11:49:04 272 sed-i is /say Some sed(1)s have -i which claims to "modify" files. It does not: sed is not a FILE editor. The -i flag re-writes the entire file and replaces the original with the new. This breaks open handles and hard-link sets, and fails to follow symlinks. -i is also unportable: valid sed on one system will write broken files on another. Use ed(1) or ex(1) instead: eg. ex -sc '%s/a/b/|wq' file nobody
go|dfish 2008/09/29 11:06:25 3 sed\n is /say http://sed.sourceforge.net/sedfaq5.html#s5.10 nobody
igli 2008/02/14 05:30:59 2 sedawk is /say http://www.unix.org.ua/orelly/unix2.1/sedawk/index.htm nobody
greycat 2007/06/12 11:14:22 1 sednewline is /say http://sed.sourceforge.net/sedfaq5.html#s5.10 nobody
karolisl 2007/08/22 12:35:12 5 sedredir is /say All sed questions should be asked in #sed, not #bash ;) nobody
e36freak 2013/02/04 13:11:05 3 sedstr is /say Do not use sed for string manipulation. Your shell can handle it just fine on its own, and is much faster. Forking an external utility like sed for every string manipulation can add _seconds_ to execution time. See http://mywiki.wooledge.org/BashFAQ/100 for proper string manipulation techniques. nobody
savetheWorld 2007/12/11 09:18:47 1 sedtut is /say Intro to sed: http://www.grymoire.com/Unix/Sed.html#uh-39 sed 1 liners : http://www-h.eng.cam.ac.uk/help/tpl/unix/sed.html nobody
e36freak 2012/03/21 10:31:34 8 sedvar is /say Don't embed shell variables in sed, expecting a fixed string replacement (e.g. sed "s/$foo/$bar/"). It won't work... at best, it'll be extremely prone to bugs. See http://mywiki.wooledge.org/BashFAQ/110 nobody
greycat 2007/06/05 13:12:13 22 seen is /say awk '!seen[$0]++' # Remove second and subsequent instances of each input line, without having to sort them first. robottojanai!2e259005@gateway/web/freenode/ip.46.37.144.5 2018/05/27 04:31:49
lhunath 2015/03/25 06:39:19 55 select is /say select fruit in Banana Strawberry; do eat "$fruit"; done # 'select' lets the user pick an option and runs the body with the user's choice assigned to the variable. sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/02/18 20:23:26
cthuluh 2011/08/15 05:04:45 1 selftell is /say Please don't use greybot's factoids for personal use when you are on the #bash channel. Instead, send a private message to greybot containing the factoid you want to read. For example, instead of "!pe", use "/msg greybot pe". nobody
e36freak 2013/07/28 20:46:53 0 sendtnks is /say Send thanks to the people who helped you: http://sendtnks.meteor.com/ nobody
lhunath 2009/11/13 05:28:02 3 sense is /say We can't help you if your question makes no sense. Try to explain your problem in English sentences that aren't broken or ambiguous and don't use bash code to explain yourself. Give sample input and output data. Not code. joelkraehemann!~joelkraeh@2a02:120b:7ff:13f0:26be:5ff:fee1:2b31 2017/08/11 15:12:25
greycat 2010/09/07 08:48:12 1 september is /call august nobody
koala_man 2013/06/21 16:53:46 268 seq is /say seq(1) is nonstandard, inefficient and useless. For bash2.04+/zsh/ksh93, use for ((i = 1; i <= 10; i++)); do ..., for POSIX and other shells, see !counting pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/26 15:43:27
kojiro 2007/10/20 06:51:17 0 seqfunc is /say seq() { local i FIRST=1 INCREMENT=1 LAST=1; case $# in 3) FIRST=$1 INCREMENT=$2 LAST=$3;; 2) FIRST=$1 LAST=$2;; 1) LAST=$1;; esac; i=$FIRST; while [ $i -le $LAST ]; do echo $i; let i+=$INCREMENT; done; } nobody
lhunath 2007/03/08 12:47:32 1 servant is /say We are not your servants. We are here to help you answer your questions, and assist you in your problems. We do not write scripts for you, and we do not fix scripts for you. If you have a problem, do not come here until you know what your problem is EXACTLY. We can help you solve it, but we CANNOT find the problem for you; that is YOUR task. cr1t1cal!~chiken@60-242-215-61.static.tpgi.com.au 2017/01/03 17:11:13
geirha 2012/10/13 05:15:15 90 set is /say help set <Enter> http://bash-hackers.org/wiki/doku.php?id=commands:builtin:set # set -vx is useful for debugging, set +H for playing in terminal. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/30 01:49:07
geirha 2014/11/20 08:30:34 141 set-e is /say "set -e" tells bash to abort the execution of the script when an unchecked command fails. A command is checked when it is in an if, while, until, &&, || or ! check. Also see http://mywiki.wooledge.org/BashFAQ/105 nobody
greycat 2009/08/10 09:54:29 3 set-f is /say ''set -f'' disables glob expansion. You may need this in constructs like ''for w in $words'' or ''array=($words)'' just in case one of the words contains a * or ?. nobody
nDuff 2012/07/18 15:01:05 9 set-u is /say "set -u", or "set -o nounset", makes use of unset variables an error. To test whether a variable is present when this is active without causing an error, you can check for [[ ${var-} ]] instead of [[ $var ]]. nobody
lhunath 2013/11/19 08:39:24 1 set-x is /say set -x (or ''bash -x myscript'') makes bash output the exact command that it will run after parsing and expansion. You can put ''set -x'' just before the code you want to debug (turn off with ''set +x''). To add more information, change PS4 first: eg. PS4='+($?) $BASH_SOURCE:$FUNCNAME:$LINENO:' nobody
greycat 2011/06/27 10:48:02 1 setgid is /say The setgid bit (octal permission bit 02000) on a directory causes new files to inherit the directory's group ownership. See http://mywiki.wooledge.org/Permissions#setgid nobody
koala_man 2009/02/27 03:57:43 15 setuid is /say Bash drops setuid, and Linux disables setuid for scripts. Use sudo or a C wrapper if you must. nobody
kojiro 2007/11/16 13:36:28 0 sfsg is /say So Far So Good nobody
lhunath 2013/11/08 09:44:24 576 sh is /say sh is NOT bash. It is a POSIX/bourne shell. To run bash code, your script MUST have #!/bin/bash at the top and it MUST be either executed directly or with bash (ie. NOT sh myscript). Some /bin/sh link to bash, you cannot rely on this and it will disable most bash features. http://mywiki.wooledge.org/BashGuide/Practices#Choose_Your_Shell nobody
lhunath 2009/10/28 07:25:46 0 sh-c is /say Never expand parameters in ''sh -c'' commands. Use either of these instead: sh -c 'command "$1"' -- "$file" OR file=$file sh -c 'command "$file"' OR sh -c "$(printf 'command %q' "$file")". Same problem with 'ssh', though with 'ssh' only the last alternative works. nobody
greycat 2008/04/08 13:40:50 10 shame is /say http://wooledge.org/mywiki/ShellHallOfShame meth!~meth@unaffiliated/meth 2018/01/12 08:47:42
greycat 2012/04/17 11:09:42 2 shanghai is /say shanghai (verb): to force into service. Originally used to describe the practice of kidnapping men and forcing them to serve as sailors. nobody
ormaaj 2012/09/27 18:26:48 167 shbot is /call evalbot nobody
lhunath 2014/02/04 08:16:53 154 shebang is /say The top of a script MUST have a #! line, called 'shebang' or 'hashbang'. It tells the kernel what program to run your script with. We recommend `#!/usr/bin/env bash` (why: http://stackoverflow.com/a/733901/58803). http://mywiki.wooledge.org/BashGuide/CommandsAndArguments#Scripts http://www.in-ulm.de/~mascheck/various/shebang/ dave0!~dave@168.215.dsl.syd.iprimus.net.au 2017/10/27 04:23:30
lhunath 2008/07/17 00:01:05 26 sheet is /say Bash Reference Sheet: http://wooledge.org:8000/BashSheet nobody
greycat 2015/05/12 12:26:33 6 shell is /say In this context, a shell is a command interpreter. It reads commands, and performs actions. cahoots!~J@rrcs-108-178-177-210.west.biz.rr.com 2017/02/15 10:41:44
koala_man 2013/05/20 11:47:22 295 shellcheck is /say ShellCheck is a shell linting/suggestion tool: http://www.shellcheck.net/ emg!~emg@147.21.8.1 2017/09/26 14:27:36
sjohnson 2013/09/12 10:50:16 15 shellquote is /call bashquote nobody
Riviera 2014/09/26 06:10:13 45 shellshock is /say http://mywiki.wooledge.org/BashFAQ/111 nobody
geirha 2014/09/27 05:54:25 6 shellshock-test is /say a='() { :;}; echo CVE-2014-6271 FAIL' b='() { (b)=>\' bash -c '/dev/stdout echo CVE-2014-7169 FAIL||echo CVE-2014-7169 OK;a||echo CVE-2014-6271 OK' 2>/dev/null nobody
SiegeX 2009/09/03 02:13:43 39 shift is /say to shift positional parameters to the left, simply use 'shift'. To shift to the right, use: set -- "${@:1:$#-1}" pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/05/12 12:38:44
dualbus 2013/09/30 16:25:57 60 shlaas is /say Check your code here first: http://www.shellcheck.net/ if you still have issues, then reduce your >100 line test case to the minimum possible and ask again. nobody
igli 2007/09/23 22:09:05 41 shopt is /say help shopt <ENTER> http://www.bash-hackers.org/wiki/doku.php?id=internals:shell_options -- nullglob and extglob are most common. dotglob and nocase{match,glob} can be handy too nobody
TheBonsai 2008/11/17 11:12:30 7 shot is /say *BANG* nil!~n@monade.li 2019/05/22 14:06:54
ormaaj 2012/05/31 14:50:52 4 showargs is /say https://github.com/ormaaj/dotfiles/blob/master/bashrc#L7 nobody
savetheWorld 2007/08/19 08:53:29 1 shows is /say When using the word "shows" make sure you make it clear where the information is being "shown". Is it going to the terminal on stdout or stderr? Is it going into a file? is it already in a file? is it in a pipe? etc.. nobody
emg 2015/02/10 12:14:49 6 shtricks is /say POSIX sh tricks and tips http://www.etalabs.net/sh_tricks.html nobody
igli 2008/04/12 12:01:12 0 shtut is /say http://steve-parker.org/sh/sh.shtml nobody
ormaaj 2015/01/01 08:10:53 0 shuffle is /say Shuffling collections in shell: http://mywiki.wooledge.org/BashFAQ/026 Avoiding bias: http://blog.codinghorror.com/the-danger-of-naivete/ nobody
lhunath 2009/06/11 01:58:41 1 sigkill is /say SIGKILL is exactly the same as SIGTERM except that it doesn't invoke the process' signal handlers. You should *never* use it unless you *know* the process is bugging out in its signal handler. nobody
greycat 2012/12/19 12:36:37 20 signal is /call trap nobody
lhunath 2014/02/19 09:10:20 2 sigs is /say SIGTERM: Tells a process to clean up and stop running. SIGINT: User wants to drop back to his shell. SIGQUIT: User saw a bug and wants you to dump debug info. SIGHUP: User closed his terminal. SIGKILL: User wants you to drop what you're doing and stop immediately. qwename!~qwename@unaffiliated/qwename 2017/07/15 02:57:38
bwe 2014/04/20 13:34:35 0 simplicity is /say Less is more. nobody
sjohnson 2012/08/03 10:24:45 9 simplify is /say Before you boldly claim that some common command doesn't work, try simplifying the command string or script down to the basics to see if the problem still occurs. RicardasSim!~RicardasS@78-63-172-44.static.zebra.lt 2018/06/11 09:06:04
sjohnson 2013/09/07 00:22:57 10 sjohnsonrev is /say # echo "gip taf ma I" | sed 's/ /_/g;s/./&\n/g' | tac | xargs | sed 's/ //g;s/_/ /g' pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/03/15 13:39:34
sjohnson 2013/09/20 12:09:49 7 sjohnsonrev2 is /say # s="gip etuc a ma i" i=-1 IFS=$'\n'; for c in $(sed 's|.|&\n|g' <<< "$s"); do ((i++)); alias "$i"="printf %s \"$c\""; done; unset IFS; for i in $(eval echo {$i..0}); do eval ${BASH_ALIASES[$i]}; done pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/03/15 13:40:10
e36freak 2011/07/29 10:22:40 0 skim is /say Don't skim. Read. There is a lot of information in links we give you, and in man pages. Once you've read it once, and have absorbed the information, feel free to skim for reference. But until you know it, read the whole thing. nobody
greycat 2011/08/09 12:51:34 2 sl is /say The reason you don't want . in PATH is because you might be sitting in /tmp and accidentally type "sl" instead of "ls", and voila! You've run the hax0r's /tmp/sl command. nobody
greycat 2007/06/04 06:00:26 0 slashes is /say You don't always have to use sed 's/foo/bar/'. If bar contains slashes, you can use a different delimiter, like sed 's#foo#bar#'. Any printable character can be used. nobody
greycat 2011/01/05 13:35:42 11 slice is /say Some people use the word "slice" to mean "a contiguous set of array elements", as in "I want array elements 5 through 7". "${array[@]:5:3}" or "${@:5:3}" nobody
izabera 2015/03/19 17:07:32 13 slurp is /say To read a file's contents into a variable: var=$(< file) However, this strips trailing newlines. To work around that: var=$(cat file; printf x) var=${var%x} In bash 4.1 and above, read -rN0 < file nobody
greycat 2007/05/22 11:34:24 3 smaller is /say When you're trying to find your mistake in a shell script, make the script SMALLER. Smaller is better. Reduce your code to the bare minimum size that still shows the problem. You'll probably end up fixing it yourself in the process. nobody
greycat 2007/01/23 13:17:21 22 smart is /say http://www.catb.org/~esr/faqs/smart-questions.html nobody
greycat 2014/05/09 07:30:18 7 smartquotes is /say Hey, you! Mac user! http://www.iclarified.com/38772/how-to-disable-curly-quotes-in-mac-os-x-mavericks nobody
ormaaj 2013/09/07 16:14:56 8 smiley is /say m# case { { ( { ) ( <<< :-\) cat ) } nobody
greycat 2014/11/03 12:32:35 11 so is /call stackoverflow nobody
kojiro 2012/01/16 20:45:29 1 so_html is /say http://stackoverflow.com/questions/1732348/#1732454 (best response to parsing HTML with regex yet) nobody
savetheWorld 2007/08/13 07:48:42 2 solution is /say "The first part of solving any problem is making sure you understand what you are trying to solve. If you can't cogently and clearly state what you are trying to do, then how can you expect anyone else to understand what you are trying to do?" root_guix!~root@13-36-179-94.pool.ukrtel.net 2017/02/11 08:17:21
lhunath 2013/04/18 18:04:42 54 sort is /say sort(1) is an external command that sorts your input lexicographically or numerically. See http://to.lhunath.com/bashlib#L1207 for a bash sorter that can optionally take a comparator command. acerbic!~acerbic@2602:30a:2cf9:4710:f27b:cbff:fe81:c6b3 2017/06/02 13:03:52
Riviera 2013/04/18 18:09:34 9 sort-k is /say To sort(1) on the second field: -k 2,2 nobody
BlastHardcheese 2013/03/27 10:35:22 31 sortfiles is /say declare -a files; n=0; while IFS= read -r -d ''; do for((i=0;i<=n;i++)); do if [[ "$REPLY" -nt "${files[i]}" ]]; then for((j=n;j>i;j--)); do files[j]="${files[j-1]}"; done; files[i]="$REPLY"; ((n++)); break; fi; done; done < <(find . -type f -print0) # sorts all files under . in descending order by mtime; requires a find(1) that supports -print0 nobody
cdown 2014/08/15 03:15:15 185 source is /say ''. <script>'' (or "source", which is not portable) reads and executes the commands from <script> in the current shell. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/10/15 13:27:46
greycat 2010/12/23 12:16:49 11 sp is /say Special Parameters (magic read-only builtin "variables"): http://www.gnu.org/software/bash/manual/bashref.html#Special-Parameters nai!~naim@monade.li 2019/04/21 16:47:10
lhunath 2014/02/25 07:03:25 8 space is /say In bash, whitespace is syntax. You can't be lax with it: var=value; [[ "$var" = "$value" ]] koisoke!xef4@epilogue.org 2019/04/28 16:40:05
lhunath 2013/07/05 10:32:55 26 spaces is /say Spaces in bash are important syntax: they separate command names and arguments. foo = bar is NOT AN ASSIGNMENT (runs foo with arguments = and bar), if [-d "$dir"] is NOT A TEST (runs the program [-d). Also remember to quote ALL your expansions to avoid unintentionally syntactical spaces from your data: rm "$file" (NOT rm $file). nobody
gau13 2011/04/05 17:04:06 6 spaceship is /say "Can you please help me build a space ship? I have only one variable, a, and its value is 0" nobody
igli 2007/12/02 13:09:45 12 spam is /say Please don't make us do this: while : ; do wget -O/dev/null -o/dev/null http://www.<yourSpammyDomain>.com/ ; done ondrej008!uid311009@gateway/web/irccloud.com/x-uid311009 2018/07/20 08:41:59
greycat 2010/03/25 11:10:59 4 special is /say Special Parameters are read-only pseudo-variables, such as $$ (PID), $! (bg child PID), etc. See http://mywiki.wooledge.org/BashGuide/Parameters nobody
kurahaupo 2014/02/09 13:34:17 2 specialchars is /say Inside single quotes there are no special characters (but you can't put a single quote *inside* a single-quoted string); inside double quotes, \ and $ are special; outside quotes, \ and $ & ( ) | ; < > * ? [ ] are special along with whitespace, and in certain contexts # = ~ { } are also special. nobody
yitz_ 2013/03/04 13:23:55 3 speed is /say If speed or performance is an issue, try ##c dorp!~dorp@bzq-84-111-138-241.red.bezeqint.net 2017/06/09 11:50:32
igli 2007/10/17 21:43:37 27 split is /say http://bash-hackers.org/wiki/doku.php?id=syntax:pe#substring_expansion pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/21 18:21:10
e36freak 2012/08/27 09:21:55 0 split_str is /say split_str() { local sep=$1 str=$2; [[ $1 && $2 ]] || return; split=(); while [[ $str = *"$sep"* ]]; do split+=("${str%%"$sep"*}"); str=${str#*"$sep"}; done; split+=("$str"); } # usage: split_str SEP STRING # splits STRING on the literal string SEP, populating the array "split". for example: s='foo - bar - baz blah - quux'; split_str ' - ' "$s"; printf '%s\n' "${split[@]}" nobody
koala_man 2013/08/06 11:14:22 0 splitscreen is /say t=$(mktemp); printf '%s\n' 'screen tail -F somefile' split focus screen > "$t"; screen -S screenname -c "$t" nobody
koala_man 2014/10/23 10:16:10 1 sponge is /say sponge() ( tmp=$(mktemp) && cat > "$tmp" && cat -- "$tmp" > "$1" && rm -- "$tmp"; ) # read and write the same file in a pipeline: grep -v '^#' file | sponge file nobody
igli 2008/02/25 12:52:57 6 spoon is /say We're not here to spoon-feed you, nor are we your private tutor. Try stuff out after reading the urls, and then ask, pasting a cmd into irc, followed by the error msg. Learath2!~learath2@unaffiliated/learath2 2018/01/23 09:04:05
e36freak 2011/10/28 10:26:39 5 sprintf is /say Instead of capturing the output of printf, bash's printf can be assigned directly to a variable. printf -v myvarname %04d "$i" muffindrake!~muffindra@unaffiliated/muffindrake 2017/08/01 20:14:06
dualbus 2014/02/05 07:16:28 437 sprunge is /say To upload to sprunge from your terminal, use: <command> | curl -F 'sprunge=<-' http://sprunge.us # or see !sprungefunc. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/06/10 02:08:02
e36freak 2013/06/30 23:48:45 2 sprungeform is /say Paste to sprunge from your web browser: http://sprunge.e36freak.com nobody
geirha 2014/08/27 12:12:01 225 sprungefunc is /say sprunge() { tail -n +1 -- "$@" | curl -F 'sprunge=<-' http://sprunge.us; } # usage: sprunge file1 file2 ... # or cmd | sprunge sjohnson!~sjohnson@cow.sj.rfc1459.net 2017/09/19 12:15:07
e36freak 2012/10/15 11:17:00 0 sprungefunction is /call sprungefunc nobody
lhunath 2013/06/19 11:59:36 3 sqlitequote is /say sqlitequote() { printf %s "'${1//\'/''}'"; }; sqlite3 foo.sqlite <<< "UPDATE table SET foo=$(sqlitequote "$foo")" nobody
nDuff 2011/05/26 16:42:02 3 sry is /call plz nobody
sjohnson 2014/09/26 15:45:44 10 ss-test is /call shellshock-test nobody
llua 2015/04/20 07:13:14 212 ssh is /say Secure SHell (#openssh, http://mywiki.wooledge.org/CategorySsh). To run echo "$localVar" remotely, use: ssh user@host bash < <(printf 'echo %q\n' "$localVar") pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/25 10:50:53
lhunath 2014/11/26 11:08:43 0 ssh_original_command is /say openssh's "forced command" receives an SSH_ORIGINAL_COMMAND set to the command passed to "ssh". forced-commands SHOULD NOT try to parse shell code from it. Use it only for entirely custom protocols (akin to internal-sftp) or a non-restrictive wrapper. nobody
lhunath 2010/08/12 00:46:40 3 sshcleanup is /say Cleaning up your remote ssh command: http://stackoverflow.com/questions/3413432 nobody
fr33load3r 2013/03/11 21:10:05 1 sshconfig is /say openssh configuration files (man ssh_config). Also, see http://cyber.com.au/~twb/.ssh/config. tires!~pi@cpe-172-101-20-238.maine.res.rr.com 2018/02/25 13:28:39
go|dfish 2009/01/26 17:26:24 2 sshdd is /say ssh remote dd of=file.on.remote < /dev/sda nobody
greycat 2007/10/19 12:32:46 9 sshkeys is /say http://wooledge.org/mywiki/SshKeys nobody
geirha 2014/02/04 01:07:58 0 sshpax is /say You can duplicate an entire directory hierarchy onto a remote host using ssh and pax: cd /source && pax -w . | ssh me@remotebox 'cd /target && pax -r' nobody
geirha 2011/08/23 11:49:29 10 sshtar is /say You can duplicate an entire directory hierarchy onto a remote host using ssh and tar: cd /source && tar cf - . | ssh me@remotebox 'cd /target && tar xf -' nobody
greycat 2011/08/30 12:47:32 11 stack is /say The FUNCNAME array variable contains the names of all the functions in the current function-call stack. no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/07/17 20:23:05
greycat 2014/11/03 12:32:24 9 stackoverflow is /say Like virtually every other web site you find via Google, StackOverflow is chock full of wrong answers. Verify everything you read there before using it. nchambers!~nchambers@learnprogramming/staff/nchambers 2017/09/21 18:30:36
lhunath 2013/03/30 09:34:01 1 stat(1) is /say is a tool some systems have to display metadata on files and file systems. It is NOT recommended for use in scripts since there are no guarantees that systems have stat(1) and even less guarantees that the options of your stat will in any way resemble the options of another's. For file size, use wc, for time checks use test. nobody
ormaaj 2013/06/14 02:31:06 29 status is /say http://wiki.bash-hackers.org/dict/terms/exit_status zalt__!~lambda443@unaffiliated/lambda443 2019/04/26 11:32:52
kojiro 2009/05/04 18:51:43 1 stderr is /say Standard Error is the secondary file descriptor to which commands print to the terminal. It's meant for messages that shouldn't be parsed by default. Redirect to stderr: '>&2'. See !stdout !stdin and !redirtut for more info. nobody
kojiro 2009/03/30 06:27:30 30 stdin is /say Standard Input is the file descriptor from which commands can read input. See !stdout !stderr and !redirtut for more info. nobody
kojiro 2009/03/30 06:25:41 13 stdout is /say Standard Output is the primary file descriptor to which commands print to the terminal. See !stderr !stdin and !redirtut for more info. nobody
lhunath 2011/03/07 01:22:43 1 step is /say To step through your code, look into bashdb or put this where you want to begin stepping: trap '(read -p "[$BASH_SOURCE:$LINENO] $BASH_COMMAND?")' DEBUG nobody
smg 2006/11/02 11:11:17 1 stfw is /say Search The Fucking Web jp!ayy@youlosethega.me 2017/11/26 21:12:49
greycat 2011/02/08 09:29:24 0 sth is /say Stop being a lazy git, and/or learn to spell. http://mywiki.wooledge.org/NetEtiquette nobody
greycat 2011/06/27 10:47:17 2 sticky is /say The "sticky" bit (octal permission bit 01000) on a directory prevents removing other people's files. See http://mywiki.wooledge.org/Permissions#sticky nobody
fr33loader 2014/11/13 14:47:29 0 stopclever is /say “UNIX tools were not designed to stop users from doing stupid things, as that would also stop them from doing clever things.” — Doug Gwyn nobody
lhunath 2008/10/17 14:20:03 0 strace is /say strace(1) is a linux tool for viewing the system calls applications make. It is invaluable for debugging more complex or stubburn problems. On certain other systems, dtruss(1) might achieve the same thing. To use it, just put strace/dtruss in front of your command. nobody
ivazquez 2007/09/03 02:46:51 4 stream is /say Programs designed to be used on a stream of data include sed and grep. profess!~profess@unaffiliated/csddesk 2016/07/03 20:35:08
bronze 2009/12/30 18:44:39 34 strings is /say Bash parameter expansion does lots of string operations. See !faq 100 for info on string operations in bash. acerbic!~acerbic@2602:30a:2cf9:4710:f27b:cbff:fe81:c6b3 2017/06/02 13:04:59
Riviera 2014/04/20 13:16:28 3 stupid is /say http://web.mit.edu/~simsong/www/ugh.pdf nobody
pgas 2014/09/29 04:53:28 46 style is /say Some assorted coding guides, ideas welcome: http://bash-hackers.org/wiki/doku.php/scripting/style google style: https://google-styleguide.googlecode.com/svn/trunk/shell.xml arethusa!~jfdsak@ool-182fcea2.dyn.optonline.net 2019/08/08 14:18:39
greycat 2006/09/07 12:34:54 21 su is /say "Switch user". This command either gives you an interactive shell as a different UID, or it allows you to execute a specified command as a different UID. You *do* have to tell it what command you want to run with the other UID, if you're trying to use it in a script. And you MUST give the username! su root -c '/foo/bar baz quux' nobody
e36freak 2013/07/22 20:33:54 4 sub is /say https://github.com/e36freak/tools/blob/master/sub jp!ayy@youlosethega.me 2017/11/13 16:53:58
greycat 2008/05/22 07:51:59 1 subshell is /say http://wooledge.org/mywiki/SubShell nobody
lhunath 2014/02/24 08:34:23 1 sudo* is /call sudofail nobody
lhunath 2014/02/24 08:34:19 40 sudo> is /call sudofail nobody
mattcen 2013/11/18 02:34:17 0 sudoedit is /say sudoedit is a wrapper around sudo that allows editing of files not owned by you, which does proper file locking etc. You should use it for editing files in /etc. Equivalent to sudo -e. nobody
greycat 2007/05/08 13:20:51 18 sudoers is /say username ALL = NOPASSWD: /some/program nobody
lhunath 2014/02/24 08:31:57 1 sudofail is /say sudo echo > file -- bash operations such as redirections, glob expansions, etc. are performed by the USER's bash, not by sudo. Consider: `sudo tee file` or `sudo bash -c 'echo > file'` nobody
Riviera 2015/06/20 09:57:34 0 sudotalk is /say Sudo: You're Doing it Wrong: https://www.youtube.com/watch?v=o0purspHg-o nobody
yitz_ 2009/08/14 12:43:04 12 suid is /say The SUID bit doesn't work on interpretted scripts in Linux. Use sudo or http://pastebin.com/f1967215f: wget -O code.c 'http://pastebin.com/pastebin.php?dl=f1967215f' ; nano code.c ; gcc -o run code.c ; sudo chown root run ; sudo chmod 4755 run nobody
e36freak 2012/11/21 09:34:39 18 sum is /say sum the values of the first column: awk '{tot += $1} END {print tot}' nobody
BlastHardcheese 2013/05/31 00:22:06 3 supercopy is /say supercopy(){ sudo sh -c 'for file in "${@:2}"; do cp "$file" "$1" && chown "$SUDO_UID":"$SUDO_GID" "$1"/"${file##*/}"; done' _ "$@"; } # usage: supercopy destination files [...]; copies all files to destination and changes the copies' ownership to the uid/gid of the invoking user nobody
greycat 2011/05/04 08:57:49 0 surgeon is /say <mcantor> I feel like a surgeon who opened up a patient for a hernia procedure only to find that the liver is atrophied, a lung is collapsed and the kidneys have simply been replaced with a Post-It note saying "Sorry" nobody
igli 2007/12/14 21:53:44 0 suspense is /say The suspense is killing us.. do tell ;-) If you figured out a problem you asked us about, it's only polite to share the solution as well as the work. That way other people who didn't know the answer gain something from your time with us. :) nobody
dualbus 2013/11/08 07:26:01 2 svercmp is /say Simple version comparison in pure bash: https://github.com/dualbus/myscripts/blob/master/svercmp nobody
greycat 2013/10/29 13:17:15 0 svg is /say Scalable Vector Graphics, an XML-based vector image format. If someone's got svg questions, they should probably ask me about <xml>. nobody
koala_man 2015/03/16 12:05:45 33 svn is /say If you're considering removing .svn directories, first read "svn --help export". If you're not convinced, find . -name .svn -prune -exec rm -rf {} + mthowe!~morganh@unaffiliated/mthowe 2017/08/31 00:48:37
geirha 2010/11/09 08:29:29 27 svngrep is /say svngrep() { find . -name .svn -prune -o -type f -exec grep "$@" /dev/null {} +; } nobody
izabera 2015/02/17 06:40:46 2 swapfd is /say Swap stdout and stderr: 3>&2 2>&1 1>&3 3>&- http://mywiki.wooledge.org/Redirection nai!~naim@nai.im 2018/05/20 23:55:02
ferret 2009/07/06 05:44:38 9 syntax is /call grammar k!~krok@unaffiliated/krok 2018/03/10 08:49:26
lhunath 2007/05/18 13:48:50 0 sysreq is /say (#)Bash System Requirements: Common Sense, Notion of the English Language, 90+ IQ. nobody
greycat 2010/09/30 09:17:10 11 t-shirt is /call tshirt nobody
Riviera 2014/08/27 15:29:34 19 tables is /say i need syntax pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/31 09:40:26
ivazquez 2007/09/03 02:46:05 2 tabular is /say Programs designed to be used on tabular data include awk, cut, and paste. nobody
e36freak 2011/04/14 18:15:31 7 tac is /say tac(1) is a non-standard GNU-only command. A POSIX equivalent would be awk '{a[i++]=$0} END {while (i--) print a[i]}' nobody
Bronze 2012/04/04 06:01:19 26 tar is /say tar is an archiver but not the only one. Usually tar is a good choice (e.g. to duplicate an ENTIRE file system), but if you need fine-grained control, find|cpio or find|pax wins nobody
greycat 2015/09/11 12:34:25 0 tcl is /say No, seriously, you can actually use Tcl for *other things* besides expect! nobody
ormaaj 2012/12/30 11:17:20 10 tco is /say # f() if [ "$1" -ge 0 ]; then printf %s "$1"; exec dash -c "${2}f "'$(($1 - 1)) "$2"' _ "$@"; fi; (f 9 "$(typeset -f f)"$'\n'); printf %s\\n ' See: http://mywiki.wooledge.org/WrapperScript http://jeapostrophe.github.com/blog/2012/05/28/exec-vs-system/' nobody
greycat 2009/11/05 13:44:07 4 tcpserver is /say Part of ucspi-tcp <http://cr.yp.to/ucspi-tcp.html>, useful for providing easy, robust network services WITHOUT having to be superuser or edit a monolithic inetd.conf file. nobody
sjohnson 2014/01/18 11:31:06 1 teasing is /say No teasing the channel bot. awsumpwner27!~awsumpwne@wnpgmb0808w-ad04-3-63.dynamic.mtsallstream.net 2016/08/18 03:10:04
greycat 2010/07/08 12:07:37 75 tee is /say tee reads from standard input and writes to standard output *and* one or more files nobody
kojiro 2012/01/19 05:55:43 4 telnet is /say "A perfectly good tool for diagnosing issues with SMTP and HTTP servers." -greycat Otherwise, not a secure way to connect to a shell for administrative purposes. nobody
greycat 2009/04/14 13:01:08 144 template is /say http://mywiki.wooledge.org/TemplateFiles nobody
greycat 2009/04/14 13:01:16 7 templates is /call template nobody
bronze 2009/09/26 15:31:02 20 terminal is /say a hardware device used for user input/output in the early Cretaceous period of computing. Consisted of a primitive TV-like tube which "drew" characters on the screen in fixed positions. Most early terminals were limited to 24 lines high by 80 chars wide. At the time this was considered a miracle of technology. dminuoso_!~dminuoso@unaffiliated/dminuoso 2016/10/10 23:39:52
koala_man 2014/04/03 10:52:31 2 test-f is /say # help test | grep -- -f nobody
igli 2008/03/09 22:08:11 4 testing is /say Testing is for *you*. PLAY with the code, work out what it means; short snippets show the idea. /msg greybot tias ;-) nobody
geirha 2014/03/31 10:55:33 953 tests is /say Use [[ .. ]] for testing strings or files, (( .. )) for testing numbers and 'if ..'' for testing commands. Do *NOT* use [ .. ] in bash (only in sh). See <http://mywiki.wooledge.org/BashSheet#Tests> and <http://mywiki.wooledge.org/tests>. Difference between [ and [[: <http://mywiki.wooledge.org/BashFAQ/031> pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/07 13:10:53
geirha 2014/09/26 11:46:23 0 testx is /say http://www.in-ulm.de/~mascheck/various/test/ nobody
igli 2007/06/22 16:13:41 3 text is /say Give us a sample input line, and tell us what you want the output to be. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/12 17:27:15
kojiro 2007/10/25 07:16:53 40 thanks is /say Don't thank me, I'm a bot. Did you mean to thank greycat? nobody
yitz_ 2014/11/01 14:06:46 2 thebasics is /say People in #bash are here to help others work through problems and chellenges and direct people in learning. This isn't a 101 classroom, though. If you don't know the basics, read the guide. nobody
emg 2014/02/04 09:54:13 3 theory is /say The difference between theory and practice? In theory there is no difference. In practice there is. sjohnson!~sjohnson@cow.sj.rfc1459.net 2017/09/09 11:34:08
TheBonsai 2007/11/17 00:15:45 7 thequestion is /say [[ $question =~ (bb|[^b]{2}) ]] nobody
\amethyst 2009/08/15 22:04:37 0 thompson is /say The Thompson shell was the predecessor to the Bourne (q.v.) shell, used in versions of Unix prior to 7th edition. A modern port of the Thompson shell is available at http://v6shell.org/ . nobody
ormaaj 2012/11/19 18:06:28 4 threads is /say https://github.com/e36freak/templates/blob/master/threads nobody
dualbus 2014/11/28 21:11:41 2 thx is /say THX? That digital audio thing they use in movies? Oh, wait, you want http://yaku.dk/s/irc/dont-use-thx-sry-plz.txt or section 1.1 of http://mywiki.wooledge.org/NetEtiquette nobody
igli 2007/06/29 02:32:40 5 tias is /say Try It And See Remavas!Remavas@gateway/shell/xshellz/x-Remavas 2019/08/22 11:42:55
VImtermute 2007/02/18 08:12:00 1 tias2 is /say Try It And See, But Don't Try rm -rf / As Root whoisxy_!~whoisxy@82.112.154.151 2017/09/26 08:50:01
savetheWorld 2007/12/26 07:36:10 0 tib is /say Try it before you buy it! Make small one liners on the command line to make sure you understand what and how you are using an idea before you stick it the middle of a complex script. nobody
nDuff 2012/11/28 10:26:59 83 time is /say ''time'' is a bash builtin, see ''help time''. There may also be a time command installed on the system, documented in ''man time'' -- see !faq 86 to bypass bash's builtin time command, or !faq 32 to redirect the output of the builtin to a file. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/02 14:21:10
greycat 2013/02/20 13:17:58 53 timeout is /say http://mywiki.wooledge.org/BashFAQ/068 -- How do I run a command, and have it abort (timeout) after N seconds? pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/10/29 11:25:46
llua 2015/06/10 02:39:42 6 timestamp is /say exec > >(trap : 1 2 3 15 ; while IFS= read -r x ; do printf '%(%F%T)T %s\n' -1 "$x" ; done >>/var/log/mylog) 2>&1 # requires bash4.2 or later nobody
tuxdev_ 2009/12/20 20:08:15 0 timingpe is /say val=$'foo\n'; { time for ((i=0;i<2000;++i)) ; do echo "${val%$'\n'}" ; done >/dev/null; } 2> >(tr '\n\t' ' ') nobody
tuxdev_ 2009/12/20 20:06:06 1 timingpipe is /say val=$'foo\n'; { time for ((i=0;i<50;++i)) ; do echo "$val" | tr -d '\n'; done >/dev/null; } 2> >(tr '\n\t' ' ') nobody
greycat 2008/08/05 13:21:32 0 timtowtdi is /say There Is More Than One Way To Do It nobody
tuxdev 2009/12/14 11:38:59 2 timtowtdiamotwaw is /say There is More Than One Way To Do It And Most Of Those Ways Are Wrong nobody
greycat 2009/11/25 12:58:25 14 tiocsti is /say The TIOCSTI ioctl() command lets you insert input into a terminal driver's queue. "Simulate Terminal Input". nobody
ferret 2009/08/29 17:02:49 16 title is /say You can change xterm titles with something like: printf '\e]2;%s\a' "title goes here" nobody
Riviera 2014/05/09 07:40:10 4 tlcl is /say The Linux Command Line (book by William Shotts). A good guide to the command line in general, but not a fantastic example for good Bash practices: http://www.linuxcommand.org/tlcl.php and http://sourceforge.net/projects/linuxcommand/files/TLCL/13.07/TLCL-13.07.pdf/download nobody
ferret 2008/08/20 06:55:39 2 tldp is /say the tldp bash guide is outdated, and in some cases just plain wrong. There's a reason it isn't in the topic. nobody
kojiro 2009/05/06 08:54:43 3 tldr is /say Too long, didn't read. nobody
geirha 2015/03/19 04:47:07 1 tmpfile is /say will probably be gone next boot fluter_!~fluter@fedora/fluter 2017/05/13 04:33:25
cthuluh 2013/04/12 20:08:03 7 tmux is /say tmux has its own channel: #tmux nobody
koala_man 2013/08/12 16:22:34 1 tolower is /say To make a variable lowercase, you can use Bash 4 parameter expansion: ${var,,} nobody
kojiro 2007/07/05 16:54:23 2 tools is /say We're not tools. We're just trying to tell you that you're using the wrong ones. dozn!~dozn@104.236.154.251 2016/11/26 14:30:00
e36freak 2012/01/06 09:47:42 0 topic2 is /say FAQ: http://mywiki.wooledge.org/BashFAQ | Guide: http://mywiki.wooledge.org/BashGuide | ref: http://xrl.us/bhk9ww | http://wiki.bash-hackers.org/ | USE MORE QUOTES!: http://www.grymoire.com/Unix/Quote.html | Scripts and more: http://www.shelldorado.com/ | New official help mailing list: http://tx0.org/31f nobody
greycat 2011/11/03 10:28:10 0 torrent is /say http://mywiki.wooledge.org/TorrentParser nobody
koala_man 2013/08/12 16:22:15 1 toupper is /say To make a variable uppercase, you can use Bash 4 parameter expansion: ${var^^} doppel!~doppel@ip68-96-235-191.lv.lv.cox.net 2016/02/07 18:09:21
lhunath 2011/09/08 06:46:08 10 toys is /say http://mywiki.wooledge.org/Toys danielcamiel!~danielcam@unaffiliated/danielcamiel 2015/11/21 19:24:08
lhunath 2009/07/20 18:12:26 0 tp is /say Comparison of popular transfer protocols: http://winscp.net/eng/docs/protocols#protocol_comparison nobody
kurahaupo_mobile 2014/01/24 03:06:08 0 tpgrp is /say every process has a PID, a process group (PGRP, which is its own PID, or the PGRP inherited ftom its parent), and a session (SID). All processses in a PGRP have the same SID. A terminal has a session & a foreground process group (which must be in the same SID). If the terminal's SID changes, all the processes with that SID get SIGHUP. If you type ctrl-C or ctrl-Z then the PGRP gets SIGINT or SIGTSTP nobody
izabera 2015/03/24 08:22:57 1 tput is /say Do NOT hardcode terminal escape sequences. Use tput with the sequence names from man terminfo to get the right code for your terminal. Eg. red=$(tput setaf 1); echo "Hello ${red}world!" # Variables example: http://to.lhunath.com/bashlib#L210 more info at http://www.gnu.org/software/termutils/ nobody
greycat 2011/10/24 11:33:11 213 trap is /say http://mywiki.wooledge.org/SignalTrap ## To clean up on exit, don't trap a bunch of signals. Instead, trap cleanupFunc EXIT othias!d9734108@gateway/web/freenode/ip.217.115.65.8 2018/04/23 04:39:59
dmnc 2014/11/28 14:09:45 12 triggers is /say /msg shbot # triggers caze!~caze@unaffiliated/caze 2017/04/06 23:42:06
geirha 2014/10/20 12:48:08 24 trim is /say trim whitespace, like SQL TRIM() -- For shell variables: «shopt -s extglob; x=${x##+([[:space:]])} x=${x%%+([[:space:]])}». For streams: «cmd | sed 's/^[[:space:]]*//; s/[[:space:]]*$//'». See: http://mywiki.wooledge.org/BashFAQ/067 nobody
ormaaj 2013/08/03 17:54:15 4 trirandom is /say # x[1]='x[$(echo $RANDOM >&2)]'; typeset -ia x; : "${x[x[1]]:=x[1]}" nobody
yitz_ 2010/03/22 12:52:15 1 trivial is /say Trivial examples only tend to prompt trivial suggestions. doppel!~chatzilla@ip70-189-197-158.lv.lv.cox.net 2016/08/14 17:31:51
sjohnson 2012/10/27 23:55:46 15 troll is /say http://en.wikipedia.org/wiki/Troll_%28Internet%29 j3kyl_!~user@2804:7f3:8388:a15c:271e:66c3:d8ec:560a 2018/06/19 11:07:27
greycat 2011/05/12 13:11:28 0 tsaap is /say The Standard Associative Array Problem: "I have two files, one of which defines keys and values, and I want to iterate through the second file and replace all the keys with their values." nobody
savetheWorld 2007/06/02 11:42:02 15 tshirt is /say "You were treated harshly in #bash? well, it happens. Here's your T-shirt. It says: Been there, had that done to me." vclam!~unknown@c-24-11-122-3.hsd1.ut.comcast.net 2016/12/05 05:20:24
Riviera 2014/12/04 18:27:38 15 tty is /say "tty" originally stood for teletype, a primitive keyboard+printer which was the forerunner of the ASCII terminal. Nowadays it is used generically to mean "some kind of terminal", usually a pseudoterminal (X terminal emulator, Linux console, etc.). http://www.linusakesson.net/programming/tty/ esselfe!~bsfc@unaffiliated/esselfe 2017/08/21 16:28:57
bronze 2009/12/18 05:36:27 6 turing is /say What makes you think I'm a bot? nai!~naim@nai.im 2018/05/28 22:00:23
lhunath 2011/07/01 07:23:59 28 tutorial is /say A list of tutorials can be found here: http://wiki.bash-hackers.org/scripting/tutoriallist alyptik!ayy@youlosethega.me 2017/10/15 21:12:24
ormaaj 2012/04/29 14:05:02 40 tutorials is /call tutorial cousteau!~cousteau@unaffiliated/cousteau 2017/12/11 11:10:33
e36freak 2011/02/28 10:22:31 9 ty is /call plz nobody
geirha 2013/07/20 06:26:57 40 type is /say type tells you how a command will be interpreted by the shell. Don't use 'which'; use 'type' instead, because it's portable and consistent. nobody
Jetchisel 2014/01/06 18:47:30 9 type-foo is /say When someone tells you to do "type foo", that means 1) put your hands on the keyboard 2)key-in "type foo", without the quotes :-) nobody
izabera 2014/12/02 13:27:46 3 typeset is /say Set variable values and attributes. Obsolete. See '!declare'. beeman!~beeman@unaffiliated/beeman 2017/04/15 14:18:18
penos 2007/06/21 07:45:48 0 tyvm is /say yw nobody
greycat 2010/09/07 12:29:24 10 u is /say Spanish word for "or", variant used when preceding an "o" sound. If you meant "you", please see http://mywiki.wooledge.org/NetEtiquette nobody
SiegeX6 2008/02/10 00:29:55 0 udq is /say USE DIFFERENT QUOTES! The shell won't expand variables or globs inside a single-quoted string, try double-quotes instead nobody
mattcen 2013/04/02 21:51:36 4 ugh is /say The Unix-Haters Handbook <http://web.mit.edu/~simsong/www/ugh.pdf> k!~krok@unaffiliated/krok 2018/05/28 14:00:10
emg 2014/03/13 10:15:34 6 ugt is /say Universal Greeting Time http://thinkmoult.com/ugt.html nobody
greycat 2010/04/30 11:59:47 17 ulimit is /say ulimit is bash's interface to the setrlimit()/getrlimit() system calls. Resource limits are inherited by child processes, just like environment vars. bazookie!~mzp@187-27-205-195.3g.claro.net.br 2017/06/29 14:26:29
geirha 2014/02/06 05:07:35 0 ultimate is /call penultimate nobody
greycat 2007/09/05 07:38:11 17 umask is /say The umask is the set of permissions bits you do NOT want on newly created files. See http://wooledge.org/mywiki/Permissions nobody
lhunath 2009/09/16 07:19:30 9 umq is /call quotes emg!~emg@74-123-189-254.static.wiline.com 2016/12/06 14:47:58
kwtm 2011/04/18 14:50:41 3 umq2 is /say Use more quotes, not just when assigning variables. Try these examples: WRONG: Var="/* is two punctuation marks" && echo $Var ; RIGHT: Var="/* is two punctuation marks" && echo "$Var" nobody
greycat 2011/10/04 11:59:50 0 unary is /say "unary operator expected" typically means you forgot to quote something. [ $foo = bar ] is wrong. [ "$foo" = bar ] is OK. nobody
juanmabc 2012/12/11 17:51:01 5 unbuffer is /say stdbuf runs commands with modified buffering operations. man stdbuf(1) nobody
ferret 2010/12/12 06:24:37 0 uncolour is /say uncolour() { sed -e $'s/\e[[][\\0-\\077]*m//g'; } nobody
HawkI 2011/08/29 08:29:54 0 undefine is /call unset nobody
TheBonsai 2009/08/07 11:21:18 1 understand is /say Those who do not understand UNIX are condemned to reinvent it, poorly. --Henry Spencer cousteau!~cousteau@unaffiliated/cousteau 2017/11/25 12:59:48
lhunath 2012/08/03 10:44:34 8 unicode is /say Dealing with characters correctly is harder than you might think. eg. a-z does NOT mean "all lowercase letters". http://stackoverflow.com/a/6163129/58803 (skip down to "Assume Brokenness") is an *excellent* introduction to these misunderstandings. nobody
yitz_ 2014/04/28 16:15:29 62 uniq is /say is a utility for removing or reporting repeated lines. uniq will only work for showing unique lines when used with sorted input (sort | uniq). Alternatively, use sort -u. awk '!s[$0]++' is an order-insensitive alternative. nobody
ormaaj 2014/03/24 10:07:04 4 uniqarray is /say # typeset -a a=(a b c c d d d e f '' '' _ _); o=$(typeset -p a); typeset -A vals; for key in "${!a[@]}"; do ((vals[_${a[key]}]++)) && unset -v 'a[key]'; done; printf 'before: %s\nafter: %s\n' "$o" "$(typeset -p a)" nobody
neurolysis 2011/04/22 12:35:58 3 unix is /say You should be fully aware that when people say Unix they do not necessarily mean "The copyrighted proprietary operating system currently owned by AT&T or Novell or SCO or Cisco or whoever the fuck owns the copyright at this particular instant of time", but rather the whole FUCKING SPECTRUM OF UNIX-LIKE OSES including AIX, HP-UX, Linux, BSD, Solaris, etc. qwename!~qwename@unaffiliated/qwename 2017/08/06 15:49:59
ormaaj 2013/01/08 22:28:38 2 unquoted is /say Unquoted $@ and $* give unspecified behavior (as far as we can tell). Always quote them. A partial list of various unquoted behaviors by shell is here: http://wiki.bash-hackers.org/syntax/pe#bugs_and_portability_considerations nobody
ormaaj 2012/04/03 19:59:05 50 unset is /say Unset undefines a variable or function from the current shell process. See: http://wiki.bash-hackers.org/commands/builtin/unset http://fvue.nl/wiki/Bash:_Unset. Testing if a variable is set: [[ ${var+_} ]]. See !isset esselfe!~bsfc@unaffiliated/esselfe 2017/08/26 07:55:40
ormaaj 2011/10/23 22:05:23 17 until is /say Same as "while ! { list; }; do ..." nobody
greycat 2009/03/16 09:25:25 8 upload is /say If you're asking "How can I find all the files that have been uploaded recently?" then you're probably in deep trouble. The server side can't tell when a file is finished uploading unless the client renames it or uploads an "all done" file afterward. nobody
greycat 2011/09/09 10:06:10 0 upstart is /say Ubuntu doesn't use System V init like you probably expected. It uses "upstart" instead. See http://upstart.ubuntu.com/ or ask in #ubuntu. nobody
ormaaj 2012/12/19 07:20:18 7 upvar is /say see: http://fvue.nl/wiki/Bash:_Passing_variables_by_reference also: http://wiki.bash-hackers.org/commands/builtin/unset#scope and http://wiki.bash-hackers.org/syntax/arrays#indirection and http://mywiki.wooledge.org/BashFAQ/006#Assigning_indirect.2BAC8-reference_variables nobody
BlastHardcheese 2013/03/05 19:13:41 5 uri is /say pout(){ local field; for field in "${line[@]}"; do [[ $field =~ $re ]] && echo "$field"; done;}; uri_search(){ local LC_ALL=C re='^[A-Za-z][A-Za-z0-9+-\.]*://' file=; local -a line; for file; do while read -r -a line; do pout; done < "$file"; [[ "${line[@]}" ]] && pout; done;} # Usage: uri_search file ...; prints absolute URIs contained in given files nobody
BlastHardcheese 2013/03/05 17:55:23 1 url is /call uri nobody
cdown 2012/08/16 15:22:54 4 urldecode is /say https://gist.github.com/1163649 nobody
geirha 2015/07/30 02:51:31 21 urlencode is /say https://gist.github.com/887e74e74877c7613920 nobody
lhunath 2012/06/18 01:58:27 28 urlquote is /say Prepare literal data for injection into a URL path component or GET attribute: urlquote() { local c; while IFS= read -rd '' -n1 c; do printf '%%%02x' "'$c"; done <<< "$1"; }; curl "http://www.google.com/search?q=$(urlquote "$query")" nobody
kurahaupo 2013/11/07 21:17:46 0 us-intl is /say If you are using a Linux desktop, and want to type symbols such as «french-quotes» “double-quote” and ‘single-quotes’, then set your keyboard type to "US International", and then use AltGr with [ ] { } 9 0 respectively nobody
VImtermute 2007/06/15 10:19:30 2 useawk is /say Stuff with lines? Use awk. ;) nobody
fr33loader 2013/03/21 12:10:33 53 usecase is /say What is the *REAL* (non-technical) problem or issue you are trying to address? Describe it clearly and concisely using little or no technical terminology, command names, etc. A concise explanation of *WHY* you are doing what you are doing is equally helpful. l2y!sid204729@gateway/web/irccloud.com/x-sid204729 2017/12/10 13:01:58
greycat 2007/02/08 11:45:02 4 users is /say http://wooledge.org/mywiki/BashFaq -- Why don't users ever read the FAQ themselves? Why do I always have to grep the whole file for their questions? Huh? Doesn't anyone ever think of the bot? nobody
greycat 2006/10/13 06:50:54 234 using is /say "How can I do X using Y?" NEVER ask a question of that form. Y may not be the best way to do X. All you should ask is, "How do I do X?" qwename!~qwename@unaffiliated/qwename 2017/07/24 05:30:04
greycat 2014/12/23 12:24:39 1 usingfind is /call find nobody
biz 2008/06/24 10:10:40 1 usleep is /say echo "int main(int argc,char *argv[]){if(argc==2)usleep(atol(argv[1]));}" > usleep.c; make usleep nobody
greycat 2010/10/04 12:23:45 2 utmp is /say The 'utmp' file and all the commands that read it (who, w, etc.) is useless legacy crap. Yay, truncated hostnames! nobody
lhunath 2011/02/15 00:47:06 2 utsl is /say Use The Source, Luke. See ftp://ftp.gnu.org/pub/gnu/bash/ nobody
geirha 2015/02/12 00:57:30 9 uuoc is /say Useless Use of Cat (cat foo | grep bar). See http://www.iki.fi/era/unix/award.html#cat nil!n@monade.li 2019/05/29 09:37:11
kojiro 2009/01/21 12:22:44 26 uuoe is /say Unnecessary use of echo -- "echo foo | bar" uses a pipe, which generates an implicit subshell, which changes the variable scope. Pipes are also expensive. Use a here string instead: "bar <<< foo". See http://wooledge.org:8000/BashPitfalls nobody
juanmabc 2012/05/08 05:53:25 2 uuog is /say useless use of greybot nobody
lhunath 2008/05/07 12:25:18 17 uuok is /say Unsafe Use of Kill: kill -9 sends SIGKILL to a process which is the exact same thing as normal kill (SIGTERM), except that it prevents the process from cleaning up after itself. You do NOT want to use it. See http://partmaps.org/era/unix/award.html#uuk9letter slidercrank!~slidercra@unaffiliated/slidercrank 2016/12/13 05:24:08
juanmabc 2012/05/08 07:06:18 1 uuop is /say useless use of pastebins nobody
gniourf_gniourf 2011/03/19 15:14:36 0 uuoq is /say useful use of quotes nobody
juanmabc 2012/06/22 01:24:13 1 uuos is /say Useless use of sbot. nobody
kwtm 2011/03/26 13:01:14 0 uwiz is /say What you said is so much better than what I said and I defer to your wisdom. nobody
\amethyst 2008/04/17 13:54:36 0 v7 is /say Seventh Edition Unix (V7, 1979), introduced the Bourne shell, which replaced the earlier Thompson shell. If your script needs to work on pre-POSIX Unix systems, V7 is a good portability target. A full tree of V7, including source and man pages, may be found at http://minnie.tuhs.org/UnixTree/V7/ . nobody
kojiro 2008/09/09 16:56:17 0 vaccuumdb is /say VACCUUM nobody
greycat 2006/06/23 08:11:29 0 vagueness is /say VAGUENESS CAUSES HEART DISEASE! nobody
lhunath 2014/02/04 09:00:15 1086 varcap is /say By convention, environment variables (PATH, EDITOR, SHELL, ...) and internal shell variables (BASH_VERSION, RANDOM, ...) are fully capitalized. All other variable names should be lowercase. Since variable names are case-sensitive, this convention avoids accidentally overriding environmental and internal variables. prev!~prev@unaffiliated/prev 2017/03/04 02:34:56
geirha 2012/12/03 05:23:43 399 varcaps is /call varcap prev!~prev@unaffiliated/prev 2017/03/04 02:34:56
lhunath 2008/06/27 06:19:28 3 vardata is /say 1. Do NOT put commands or variable names INSIDE variables; use a function or write it out in your script. 2. Do NOT put multiple filenames inside a string; use arrays. 3. Remember to quote every expansion of your variables to protect their data. nobody
kojiro 2010/07/13 08:39:54 44 variables is /say to see all your shell variables, type set nobody
lhunath 2014/01/30 18:25:39 2 vars is /say There are two types of variables. Most variables in bash are Shell Variables (foo=bar). They exist only in the running shell and are inherited by subshells. Environment Variables (export foo=bar) are variables that exist in every process. They are NOT global, every child gets a fresh copy of the parent's whole environment. http://mywiki.wooledge.org/Environment nobody
lhunath 2008/02/26 10:27:35 24 vi is /say Vi is an editor. Use it in scripts like this: vi -c 's/foo/bar/|x' file -- See http://www.opengroup.org/onlinepubs/009695399/utilities/vi.html meth!~meth@unaffiliated/meth 2018/02/04 07:10:31
koala_man 2011/03/10 09:11:38 1 vi-mode is /say To use vi-style editing in bash, set -o vi Guest57093!~jasondock@unaffiliated/jasondockers 2016/09/29 09:33:30
cdown 2015/01/06 09:44:34 1 visual is /say http://unix.stackexchange.com/a/4861/10762 cousteau-!869356f3@gateway/web/freenode/ip.134.147.86.243 2016/07/12 07:13:31
kwtm 2011/03/14 12:46:31 0 vocab is /call vocabulary nobody
HawkI 2011/03/14 12:35:23 0 vocabulary is /say read and memorize the terms/names used on the bash man page. When you use the bash names for things correctly you'll get 800% better results in #bash, and reduce our work correspondingly! nobody
lhunath 2015/03/18 07:56:21 60 vt100 is /say ANSI X3.64 is a terminal control code standard supported by most modern terminals. VT100 is a subset implemented by DEC's VT100/102. DO NOT hardcode codes, use tput(1) instead (eg. red=$(tput setaf 1)). Many different terminals use slightly different codes, tput finds the right code for the job. http://unix.stackexchange.com/a/5802 http://wiki.bash-hackers.org/scripting/terminalcodes nobody
[arx] 2014/09/24 12:26:16 4 vuln is /say Yes, we know. Read the topic. korans!~korans@62.68.162.144 2016/05/03 09:53:21
shellshock 2014/09/26 08:44:55 7 vuln2 is /say preliminary patches: http://seclists.org/oss-sec/2014/q3/734 nobody
greycat 2012/12/05 12:46:00 2 wag is /say I'm guessing that WAG means Wild-Ass Guess. alyptik!ayy@youlosethega.me 2017/09/02 17:39:45
geirha 2012/01/08 12:49:33 35 wait is /say By default, wait waits for all of your shell's children to exit. If arguments are specified, wait waits for the specified job ids to exit. # http://mywiki.wooledge.org/ProcessManagement mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/02/20 18:17:11
greycat 2010/10/22 10:43:43 22 want is /say And I want a pink unicorn lollipop magic wand! nil!n@monade.li 2019/06/14 10:08:36
kojiro 2009/12/16 13:37:54 3 warn is /say warn() { printf '%s\n' "$@" >&2; } -- also see !faq 101 dminuoso_!~dminuoso@unaffiliated/dminuoso 2016/10/14 03:08:50
zendeavor 2013/09/21 23:57:35 14 watch is /say watch() { local t=$1; shift; while sleep $t; do clear; "$@"; done; } Storyteller!~storytell@unaffiliated/storyteller 2019/04/29 20:33:33
e36freak 2013/01/29 09:01:25 1 watchfunc is /call watchquote nobody
e36freak 2012/08/20 12:22:43 5 watchquote is /say to help understand how watch(1) handles quotes/parsing, think of it as running this: watch() { sh -c "$*"; while sleep 2; do sh -c "$*'; done; } nobody
mattcen 2012/12/23 20:51:30 193 wayrttd is /say What are you /REALLY/ trying to do!? alyptik!ayy@youlosethega.me 2017/10/10 17:08:12
kojiro 2008/07/18 20:25:33 1 wayttd is /say What Are You Trying To Do? nobody
greycat 2007/05/25 13:20:19 15 wc is /say wc(1) is a command that counts words, or lines, or characters in files. If you redirect the file as stdin, it doesn't print the name. Very useful. Example: if (( $(wc -l < "$file") > 10 )); then ... pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/29 10:36:13
lhunath 2013/04/26 12:53:39 0 wc-c is /say A portable method of finding a file's byte-size is: read size _ < <(wc -c file); or the "hack": size=($(wc -c file)) nobody
David-A 2014/01/26 14:29:08 1 wdyrwtd is /say See !wayrttd alyptik!ayy@youlosethega.me 2017/10/10 17:07:47
greycat 2009/02/09 11:54:57 71 weakness is /say http://mywiki.wooledge.org/BashWeaknesses nobody
greycat 2009/03/06 08:24:05 29 weaknesses is /call weakness nobody
\amethyst 2009/10/09 21:58:30 2 weakpoints is /call weakness nobody
ivazquez 2007/08/03 02:05:46 2 wedontcare is /say We don't care what your name is... we don't care where you live... we don't care how old you are. Ask your question or leave. nil!znc@monade.li 2019/07/30 14:15:46
kojiro 2010/03/23 11:42:58 17 wfm is /say Works For Me! nobody
greycat 2007/07/25 08:06:06 13 wget is /say wget has a man page. Hint: this channel is not it. nobody
greycat 2008/05/21 12:37:00 11 what is /say Tell us WHAT you want to do, not HOW you're trying to do it. nobody
neurolysis 2011/06/09 06:19:07 300 which is /say which(1) is an external program used to search PATH for an executable. It behaves differently on different systems and you can't rely on a useful exit code; use (from most to least portable) ''command -v'' or ''type -P'' (to find the path) or ''hash'' (to check) instead. See http://mywiki.wooledge.org/BashFAQ/081 nil!n@monade.li 2019/05/29 07:06:12
greycat 2014/04/25 07:47:44 0 whichshell is /call interpreter nobody
TheBonsai 2008/12/02 14:37:03 66 while is /say The while-loop structure: http://bash-hackers.org/wiki/doku.php/syntax/ccmd/while_loop pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/04/26 15:39:38
lhunath 2014/02/26 18:57:20 7 whilefind is /say To iterate over find results safely: while IFS= read -r -d '' file; do ...your code...; done < <(find ...your predicates... -print0) nobody
lhunath 2014/05/20 18:00:38 24 whileread is /say A while loop that reads line-by-line: while IFS= read -r line; do something "$line"; done TomyWork!~tomy@85.199.84.100 2018/03/22 06:58:08
kojiro 2007/06/02 18:01:25 2 whine is /say why do channel helpers have to whine whenever someone asks a question? Maybe he doesn't know his answer is in the parameter expansion secion of some 100k line faq or man page. Stop wasting everyone's bandwidth and type /exit if people asking for help bothers you so much. oldlaptop!~quassel@45.63.78.126 2019/05/27 15:00:01
igli 2007/08/20 20:25:51 1 whinge is /say "With Free Software you either do, or you wait." whinging doesn't work, and leads to being ignored ;) whoisxy_!~whoisxy@82.112.154.151 2017/09/26 08:51:56
yitz_ 2009/03/29 11:55:19 22 whitespace is /say Sometimes whitespace is necessary, eg after [ and [[ and before ] and ]]. Othertimes it breaks stuff eg in {1..9} Wulf!~Wulf@unaffiliated/wulf 2019/07/28 04:53:59
Riviera 2014/03/15 09:21:23 3 whoami is /say whoami is not a standard command, use the more portable "id -un" instead. bash offers UID and EUID, and your system the LOGNAME environment variable. nobody
lhunath 2010/11/26 06:51:20 8 why is /say Trying to solve a problem without first understanding why it happens or what you really want will always yield you a broken result. Explain the WHY to us (or to yourself) in detail first. nobody
igli 2007/08/03 13:15:12 5 whynot is /say You can THINK whatever you want, and then when you're done fantasizing, you can read the documentation that tells you what actually does work. nobody
\amethyst 2007/12/20 12:52:31 3 whynotls is /say as ls -F, ls -q, -> on symlinks, date and time formats varying between locales, date and time formats depending on the age of the file in the POSIX locale, spaces in the user name, spaces in the group name, spaces in the filename, newlines in the filename (more or less unfixable), groups might not even be displayed, probably more.... nobody
TheBonsai 2007/06/07 21:46:38 43 wiki is /say http://wooledge.org/mywiki/ - http://bash-hackers.org/wiki/ jp!ayy@youlosethega.me 2018/01/14 03:14:14
pgas 2014/05/23 05:25:27 3 wikitarball is /say # echo wget http://wooledge.org/mywiki.wooledge.org-$(date +%Y%m01).tar.bz2 nobody
sjohnson 2013/09/20 00:14:24 0 will is /say "When there's a will, there's a way..." nobody
greycat 2006/06/27 10:02:27 1 window_scaling is /say Users of Linux 2.6.8+ kernels, beware! I live on a part of the Internet behind a router with the TCP window scaling bug, and Linux 2.6.8+ makes it impossible to reach me. Read <http://lwn.net/Articles/92727/> for details and workaround. nobody
fr33load3r 2012/12/28 17:35:05 14 wiyug is /say What is your *ultimate* goal? Think *big* without telling us how you want the goal achieved. nobody
BlastHardcheese 2013/03/05 16:09:58 54 words is /say Some words about words: http://wiki.bash-hackers.org/syntax/words and http://mywiki.wooledge.org/WordSplitting nobody
lhunath 2009/05/18 02:23:49 208 wordsplitting is /say echo $foo; rm $foo -- If you leave $foo unquoted, bash will *remove* all whitespace (newlines, spaces, tabs) while expanding it, take each *word* as a separate argument. `echo` prints these words separated by one space and `rm` deletes each word. So ALWAYS *quote* your parameter expansions: echo "$foo" nobody
kojiro 2009/11/04 05:38:04 10 work is /say In this context, the word "work" is misleading. We're here looking for solutions, not hacks. Be specific about what you need, and try to let go of how you think it should be done. jp!ayy@youlosethega.me 2018/01/23 12:33:54
kojiro 2010/07/10 11:58:59 2 workaround is /say Don't work around the problem. Fix the problem. Or you'll end up with more problems. nobody
kojiro 2007/07/31 10:22:20 7 works is /say You might think some suggestions appear superfluous, but we aren't making this stuff up. It's risky to parse ls, top and ps, and quotes are important. You care about your script more than we do, so try to understand why we made the suggestion instead of just repeating what seems to work to you. nobody
gniourf 2015/03/13 08:24:36 1 worship is /say We all worship POSIX and never question POSIX nobody
greycat 2008/05/29 12:01:08 63 wrapper is /say http://wooledge.org/mywiki/WrapperScript nobody
greycat 2008/08/04 12:51:01 77 ws is /say http://wooledge.org/mywiki/WordSplitting nobody
greycat 2009/11/11 09:08:43 2 x is /say Repeat $str $n times # for ((i=1;i<=n;i++)); do printf %s "$str"; done # printf -v tmp %${n}s ''; echo "${tmp// /$str}" # eval printf "'%.0s$str'" {1..$n} # Be sure $str is safe for whatever your code does with it! nobody
kurahaupo 2014/09/09 15:14:05 0 x++ is /say postincrement and postdecrement alter the variable but yield the value from BEFORE the modification nobody
yitz_ 2014/02/08 17:14:48 0 x11 is /say In order for programs to do something involving X11, the program needs to know which X11 to connect with and how to connect with it. This is usually done by setting the DISPLAY environment variable, eg DISPLAY=:0 command nobody
lhunath 2015/01/21 10:35:07 398 xargs is /say xargs(1) is dangerous (broken, exploitable, etc.) when reading non-NUL-delimited input. If you're working with filenames, use find's -exec [command] {} + instead. If you can get NUL-delimited output, use xargs -0. Otherwise, you probably want a while read or for loop instead. mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/02/25 05:11:10
lhunath 2009/11/19 05:08:25 5 xargsbug is /say # touch "I don't want to miss a thing.mp3"; find * | xargs -n1 rm # By default, xargs(1) breaks on whitespace (making it rm "I" instead of the song) and quotes (the ' in don't). nobody
greycat 2009/04/10 11:17:13 0 xclient is /say In order to run an X client program from outside an X session, you need two things: a valid DISPLAY variable (export it in your script), and a means of authenticating to the X server. The latter can often be done with "export XAUTHORITY=~whomever/.Xauthority". The former requires witchcraft. nobody
yitz_ 2009/11/15 19:56:17 10 xclip is /say is a tool to manipulate the X11 clipboard. xclip -o to print the clip and -i to set it. Not bash. nobody
\amethyst 2009/10/09 21:48:19 1 xcushell is /say http://www.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html nobody
TheBonsai 2009/09/16 22:27:07 0 xdebug is /say Read some assorted debugging tips: http://bash-hackers.org/wiki/doku.php/scripting/debuggingtips nobody
kojiro 2010/09/22 12:17:41 11 xmb is /say special nai!~naim@monade.li 2019/04/14 14:43:12
lhunath 2013/10/17 07:08:51 323 xml is /say You can't parse structured languages like HTML or XML using bash, grep, sed, cut, etc. Look into xmllint, xmlstarlet, xpath, xsltproc, ... Eg. xmllint --xpath '//person[@name="bob"]/salary/text()' - <<< '<staff><person name="bob"><salary>70000</salary></person></staff>' -- Ask #xml for XPath/XSLT help, that is not a #bash question. nobody
lhunath 2014/11/12 08:51:22 11 xmlget is /say Retrieve an XML value: xmlstarlet sel -t -v 'staff/person[@name="bob"]' <<< '<staff><person name="bob">70000</person></staff>' nobody
lhunath 2014/11/12 08:54:11 1 xmlset is /say Update an XML value: xmlstarlet ed -P --update 'staff/person[@name="bob"]' -v 80000 <<< '<staff><person name="bob">70000</person></staff>' # use -L to update a file in-place. nobody
e36freak 2011/05/19 08:44:20 7 xterm is /say xterm is an X client program which implements a terminal emulator. It mostly mimics the VT102, with some extensions. Some vendors even added color, so "xterm" as a terminfo label is extremely ambiguous. To set the xterm title bar: settitle() { printf '\e]2;%s\a' "$1"; } nobody
e36freak 2011/07/01 10:44:46 0 xtracefd is /say In bash 4.x, the shell variable BASH_XTRACEFD allows you to specify a different file descriptor for xtrace (set -x) output. This can be useful when you want to redirect it elsewhere, without affecting the rest of stderr. nobody
greycat 2009/04/14 12:35:39 10 xy is /say http://mywiki.wooledge.org/XyProblem -- "I want to do X, but I'm asking how to do Y..." nobody
osse 2014/08/15 05:38:01 1 xyl is /say /me plays the xylophone nobody
geirha 2011/04/27 11:47:53 6 xyproblem is /call xy nobody
yitz_ 2008/11/18 21:19:05 3 y0 is /say y1 nobody
yitz_ 2009/02/25 21:54:05 3 y1 is /say # read v <<< "y1"; n=${v#y}; r=y$((n+1)); echo $r nobody
yitz_ 2009/02/25 21:55:15 2 y2 is /say !y1 nobody
lhunath 2011/05/24 14:09:08 2 y2k is /say The Y2K excuse: "It is highly unlikely that this program will STILL be in use on Jan 1, 2000." nobody
mattcen 2015/01/19 15:17:20 4 yes is /say yes endlessly prints 'y' (or whatever argument it is specified with) followed by a newline to stdout. Useful for sending confirmations. e.g. yes | fsck nobody
igli 2007/08/09 11:35:30 3 yesdear is /say You appear to have a console issue; what does this command output? echo '16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq' | dc qwename!~qwename@unaffiliated/qwename 2018/01/29 21:23:31
kurahaupo_ 2015/07/24 11:46:45 0 ykaya is /say You kids and your acronyms these days! nobody
iascorga 2008/11/08 02:47:22 0 your is /say It's you're not your - http://i34.tinypic.com/js0mfc.jpg nobody
igli 2007/10/24 03:12:48 1 yquotes is /say "At its base, a shell is simply a macro processor that executes commands. The term macro processor means functionality where text and symbols are expanded to create larger expressions." http://tiswww.tis.case.edu/~chet/bash/bashref.html nobody
yitz_ 2014/04/09 23:57:55 6 yw is /say You're welcome, human. nobody
greycat 2005/12/20 12:56:36 14 zombie is /say A zombie process (also known as a "defunct" process) cannot be killed; it's already dead. A zombie is a process which has exited, but whose parent has not yet waited for it (or wait3()ed for it) to collect its exit status. This often signifies a bug in the parent, unless the time of zombification is brief. jack_rabbit!~jack_rabb@c-98-228-48-226.hsd1.il.comcast.net 2017/09/28 21:51:56
izabera 2015/04/28 09:51:30 55 zsh is /say zsh is NOT an enhanced version of bash. It's a different shell, with different features and there's a different channel for your questions: #zsh For zsh-style completion, bind '\C-i':menu-complete alyptik!ayy@youlosethega.me 2017/08/29 18:56:10
ormaaj 2012/05/25 23:28:06 152 { is /say Brace and sequence expansion: {a,b,c}1 and {a..c}1 expand to a1 b1 c1, {a..c}{1..3} expands to a1 a2 a3 b1 b2 b3 c1 c2 c3. http://wiki.bash-hackers.org/syntax/expansion/brace http://mywiki.wooledge.org/BraceExpansion http://mywiki.wooledge.org/BashGuide/Patterns#Brace_Expansion nobody
lhunath 2011/08/19 14:55:04 57 {$ is /say {$x..$y} Parameter expansion happens after brace expansion. As a result, your parameters are only expanded after bash has already failed to brace-expand from dollar-x to dollar-y. Instead, use a C-style for: for ((i=x; i<=y; i++)) nobody
Tramp 2010/03/24 15:14:32 125 {} is /say Command grouping. Like (), but doesn't spawn a subshell. See http://mywiki.wooledge.org/BashGuide/CompoundCommands#Command_grouping pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/07/15 01:53:24
lhunath 2008/10/21 13:55:11 55 | is /say Pipes are used to send the (standard) output of one process to the (standard) input of another. foo | bar runs a process foo, sends its output on FD 1 to a process bar's input on FD 0. Note that foo and bar are executed in subshells; so changing variables inside pipes will have no effect on the variables in your main script. nobody
yitz_ 2012/07/28 19:52:21 22 |& is /say copy/paste from 'man bash': If |& is used, the standard error of command is connected to command2's standard input through the pipe; it is shorthand for 2>&1 |. nobody
greycat 2014/08/14 10:01:07 81 || is /say Short-circuit control operators <http://mywiki.wooledge.org/BashSheet#Tests> A || B means "Run A. If A fails, run B." A && B means "Run A. If A succeeds, run B." Example: foobar || { echo "error" >&2; exit 1; } nobody
izabera 2015/02/18 02:58:36 1 ||&& is /call &&|| nobody
koala_man 2010/06/15 05:54:36 1 ||: is /say the same thing as "|| true". your script probably also has set -e and || : is a trick to prevent the script from exiting in case the command before the || fails nobody
lhunath 2011/05/16 23:45:23 1 ||| is /say When your pipeline gets too long, make sure you can't combine commands into one (grep | awk | awk -> awk, or just use 'read') and try to assign intermediate variables for readability. nobody

#c-offtopic


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/07/15 01:53:55 0 {} is test nobody

#cjeopardy


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
aldez!~aldez@unaffiliated/aldez 2017/06/20 06:31:25 325 cj is /call cjeopardy oxymoron93!d43e266a@gateway/web/cgi-irc/kiwiirc.com/ip.212.62.38.106 2019/09/06 03:39:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/02 12:08:56 18725 h is /call hint oxymoron93!d43e266a@gateway/web/cgi-irc/kiwiirc.com/ip.212.62.38.106 2019/09/06 07:00:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/07/29 12:55:00 72043 w is /call cjeopardy_answer_module $nick $channel jp!ayy@youlosethega.me 2017/11/20 18:42:51 oxymoron93!d43e266a@gateway/web/cgi-irc/kiwiirc.com/ip.212.62.38.106 2019/09/06 07:00:29
pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/07/27 07:17:38 71572 what is /call cjeopardy_answer_module $nick $channel $args pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/22 14:04:55 christopher!NextHendri@unaffiliated/nexthendrix 2019/08/19 08:27:25

#pbot2


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
k!~krok@unaffiliated/krok 2018/08/08 17:18:00 1 'foo bar baz' is /say foo bar baz k!~krok@unaffiliated/krok 2018/08/08 17:18:05
qwename!~qwename@unaffiliated/qwename 2017/12/12 03:19:50 1 -r is ghost k!~krok@unaffiliated/krok 2018/01/05 10:25:01
qwename!~qwename@unaffiliated/qwename 2017/12/12 03:40:58 0 012345678901234567890123456789 is 30 nobody
qwename!~qwename@unaffiliated/qwename 2017/11/29 03:49:49 0 FACTMOVE is foo FACTMOVE added to #pbot2. nobody
[\!~qwename@unaffiliated/qwename 2017/11/29 03:19:23 0 FACTmove is FACTmove nobody
cousteau!~cousteau@unaffiliated/cousteau 2017/12/03 13:10:13 97 TESTcARGV is /code c11 printf("/say"); while (*++argv) printf(" <%s>", *argv); bungey!~chaos@unaffiliated/pragmatic-chaos 2019/07/08 19:19:13
cousteau!~cousteau@unaffiliated/cousteau 2017/12/10 13:30:17 17 TESTempty is /code sh printf '\0blah' cousteau!~cousteau@unaffiliated/cousteau 2017/12/10 13:35:59 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/10 16:03:14
cousteau!~cousteau@unaffiliated/cousteau 2017/12/03 13:08:03 41 TESTperlARGV is /code perl print "/say <", join('> <', @ARGV), ">" pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/10 17:21:09 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/24 15:45:28
jp!ayy@youlosethega.me 2018/05/07 21:49:58 2 __fdist is /code perl no warnings; use Exporter; use Carp; use List::Util (); sub distance { my $opt = pop(@_) if @_ > 0&& ref($_[-1]) eq 'HASH'; croak "distance() takes 2 or more arguments" if @_ < 2; my ($_s,@_t)=@_; my @results; $opt = {} if not defined $opt; foreach my $_t (@_t) { push(@results, fastdistance($_s, $_t, $opt)); } return wantarray ? @results :$results[0]; };my $_eq_with_diacritics = sub { my ($_x, $_y) = @_; return $_x eq $_y; }; my $_eq_without_diacritics; sub fastdistance { my $opt = pop(@_); my ($_s, $t) = @_; my (@v0, @v1); my ($_i, $_j); my $_eq; $opt = {} if not defined $opt; if($opt->{ignore_diacritics}) { if (not defined $_eq_without_diacritics) { require Unicode::Collate; my $collator = Unicode::Collate->new(normalization => undef, level => 1); $_eq_without_diacritics = sub { return $collator->eq(@_); }; } $_eq= $_eq_without_diacritics; } else { $_eq = $_eq_with_diacritics; } return 0 if $_s eq $t; return length($_s) if !$t || length($t) == 0; return length($t) if !$_s ||length($_s) == 0; my $_s_length = length($_s); my $t_length = length($t); for ($_i = 0; $_i < $t_length + 1; $_i++) { $v0[$_i] = $_i; } for ($_i = 0; $_i < $_s_length; $_i++) { $v1[0] = $_i + 1; for ($_j = 0; $_j < $t_length; $_j++) { my $cost = $_eq->(substr($_s, $_i, 1), substr($t, $_j, 1)) ? 0 : 1; $v1[$_j + 1] = List::Util::min( $v1[$_j] + 1, $v0[$_j + 1] + 1,$v0[$_j] + $cost,); }for ($_j = 0; $_j < $t_length + 1; $_j++) { $v0[$_j] = $v1[$_j]; } } return $v1[ $t_length]; } { local $, = ", "; print distance(shift @ARGV, @ARGV); } jp!ayy@youlosethega.me 2018/05/07 21:50:43 jp!ayy@youlosethega.me 2018/05/07 21:50:49
qwename!~qwename@unaffiliated/qwename 2017/12/08 03:09:29 0 a0 is "" nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/02 10:27:33 4 add1 is /call bc define add(x, y) { return x + y }; add($args) qwename!~qwename@unaffiliated/qwename 2017/09/04 20:23:56
cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 10:31:59 3 amp is /say & cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 10:32:36
e!e@enucs/spy.edk 2018/01/24 13:02:16 23 anustart is /code sh eval "$*" e!e@enucs/spy.edk 2018/01/24 13:11:59
k!~krok@unaffiliated/krok 2017/12/05 16:29:18 3 argtest is /call urban $args | { echo $args ____} k!~krok@unaffiliated/krok 2017/12/05 16:30:13 k!~krok@unaffiliated/krok 2017/12/05 16:52:37
jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/07 13:06:40 2 atest is /code perl my $idx = 1; map { print "arg #" . $idx++ . ": ". $_ } @ARGV jp!ayy@cpe-76-173-133-37.hawaii.res.rr.com 2018/08/07 13:07:10 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/07 13:07:06
jp!ayy@youlosethega.me 2017/12/11 00:48:06 14 atk is ignorwang clam weird embedded goblin duck fucker 19 year old mokefile addict attention whole k!~krok@unaffiliated/krok 2018/03/24 13:52:27 jp!ayy@youlosethega.me 2018/03/10 17:54:10
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/25 20:47:17 8 bashsedpenis is /code bash sed "s/$*/penis/gi" k!~krok@unaffiliated/krok 2017/11/25 21:04:15 taylor!~krok@unaffiliated/krok 2019/08/24 19:28:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/15 21:08:19 0 bobo is fag nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/15 21:08:25 0 bobo2 is homo nobody
lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 20:27:00 1 braincapacity is /code python3 import sys\nimport statistics\nword = sys.argv[1]\nPI=3.14\ndata= [ ord(i) for i in word.lower() ]\nprint ( '{:.2f} %'.format( (statistics.mean(data)+PI/statistics.stdev(data)*100 )%100) ) kg!~krok@unaffiliated/krok/x-1434802 2017/10/08 20:27:49
jp!ayy@youlosethega.me 2017/11/22 18:09:37 8 cahnge is /call change jp!ayy@youlosethega.me 2018/03/14 23:09:25
qwename!~qwename@unaffiliated/qwename 2018/03/04 01:30:13 7 commits is /say https://github.com/pragma-/pbot/commits/master nil!n@monade.li 2019/06/09 17:47:47
jp!ayy@youlosethega.me 2017/12/10 13:22:00 1 cousteau is duck jp!ayy@youlosethega.me 2017/12/10 13:24:56 jp!ayy@youlosethega.me 2017/12/11 00:48:16
jp!ayy@youlosethega.me 2017/11/23 15:55:56 7 cut is /code perl print $#ARGV; shift @ARGV if $ARGV[0] =~ m/[^:]+:/; my $_regex = shift @ARGV; lol: shift @ARGV; goto lol unless (not defined $ARGV[1] or $ARGV[0] =~ m/$_regex/); print join " ", @ARGV jp!ayy@youlosethega.me 2017/11/23 16:14:10 jp!ayy@youlosethega.me 2017/11/23 16:18:43
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/30 21:35:41 21 cv is /call urban $args | { sed s/$args/penis/Pig } koisoke!xef4@epilogue.org 2018/02/16 12:48:13
pragma- 2012/08/26 18:14:16 1 dies is 1 2 3 "die fell off table" 4 5 6 k!~krok@unaffiliated/krok 2017/12/04 15:39:43
jp!ayy@youlosethega.me 2018/01/14 13:28:35 12 e is fake zhivago philosoraptor hot chocolate k!~krok@unaffiliated/krok 2018/01/26 12:02:09 nai!~naim@monade.li 2019/05/02 15:53:00
cousteau!~cousteau@unaffiliated/cousteau 2017/11/25 14:14:56 3 ebcdic is /code bash echo -n "$*" | iconv -t EBCDIC-US cousteau!~cousteau@unaffiliated/cousteau 2017/11/25 14:25:13 mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/04/13 18:32:27
k!~krok@unaffiliated/krok 2017/11/29 03:49:50 0 edc is /say A nobody
lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 21:02:13 2 eeew is /code python3 import sys\nimport statistics\nvar1=1977.91\nvar2=39.13\nword=sys.argv[1]\ndata= [ ord(i) for i in word.lower() ]\nprint ( '{:.2f} %'.format( (((statistics.mean(data)*var1) / (statistics.stdev(data)+var2)) *40) %99 ) ) lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 21:02:42
lambda443!~lambda443@unaffiliated/lambda443 2017/10/09 23:31:01 2 ekkk is /code python3 exec( "import sys\nzx = sys.argv[1:]\nif not (len(zx)):\n print ('wtf')\n quit()\nm_i = max( [len(arg) for arg in zx])\ndef w_to_n(wx):\n rv = [ord(i) for i in wx]\n for i in range( m_i-len(wx) ):\n rv.append(0)\n return rv\ndef add_es(f,s):\n return [f[i]+s[i] for i in range(m_i)]\ndef n_to_w(f):\n return ''.join([chr(((i-97)%26)+97) for i in f])\nmx= [0 for i in range(m_i)] \nfor arg in zx:\n print( arg + ' + ',end='')\n if len(zx)==1:\n print('nothing',end='')\n mx=add_es(mx, w_to_n(arg))\nprint (' =',n_to_w(mx))" ) lambda443!~lambda443@unaffiliated/lambda443 2017/10/09 23:31:31 k!~krok@unaffiliated/krok 2018/01/13 13:12:27
lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 19:39:10 2 ekmm is /code python3 ck=("import$sys@@dargs$=$sys.argv[1:]@if$not$(len(dargs)):@$$$$print$('wtf')@$$$$quit()@max_i$=$max($[$len(arg)$for$arg$in$dargs]$)@@def$w_to_n(word):@$$$$rv$=$[ord(i)$for$i$in$word]@$$$$for$i$in$range($max_i-len(word)$):@$$$$$$$$rv.append(0)@$$$$return$rv@def$add_es(f,s):@$$$$return$[$f[i]+s[i]$for$i$in$range(max_i)$]@def$n_to_w(f):@$$$$return$''.join($[$chr($$$((i-97)%26)+97$)$for$i$in$f]$)@@mx=$[0$for$i$in$range(max_i)]$@for$arg$in$dargs:@$$$$print($arg$+$'$+$',end='')@$$$$if$len(dargs)==1:@$$$$$$$$$$$$print('nothing',end='')@$$$$mx=add_es(mx,$w_to_n(arg))@print$('$=',n_to_w(mx)$)")\nck=ck.replace('@',chr(10))\nck=ck.replace('$',' ')\nexec(ck) lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 19:40:22 lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 19:42:07
[\!~qwename@unaffiliated/qwename 2017/11/29 01:37:51 0 eval is foo nobody
lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 19:50:29 1 eww is /code python import sys\nfor arg in reversed(sys.argv):\n print(arg) lambda443!~lambda443@unaffiliated/lambda443 2017/10/08 19:50:35
demiurge!e@freenode/staff/spy.edk 2017/12/03 18:41:30 8 f-u-q-u-e-b-o-y-e is /msg jp fuq demiurge!e@freenode/staff/spy.edk 2017/12/03 18:42:45 jp!ayy@youlosethega.me 2017/12/03 18:44:41
[\!~qwename@unaffiliated/qwename 2017/11/28 07:41:56 0 fact is this can't work nobody
[\!~qwename@unaffiliated/qwename 2017/11/29 03:19:13 0 factMOVE is factMOVE nobody
qwename!~qwename@unaffiliated/qwename 2017/11/29 03:53:45 0 factmove is bun nobody
qwename!~qwename@unaffiliated/qwename 2018/01/24 01:04:50 58 feet is /call foot nil!~n@monade.li 2019/08/30 12:24:39
nai!~naim@monade.li 2019/05/02 13:58:46 1 flip is /call serve nai!~naim@monade.li 2019/05/02 13:58:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/13 08:16:58 21 foo is /call baz pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 10:28:28 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/29 15:49:46
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/10 15:27:31 3 foo bar is /call foo pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/10 15:29:24
qwename!~qwename@unaffiliated/qwename 2017/12/12 03:35:57 0 foo2 is asdf nobody
qwename!~qwename@unaffiliated/qwename 2018/01/30 05:46:23 0 foo_bar is coconut nobody
qwename!~qwename@unaffiliated/qwename 2018/01/24 01:04:45 59 foot is /call feet nil!~n@monade.li 2019/08/30 12:24:39
k!~krok@unaffiliated/krok 2017/11/27 23:32:03 14 freud is /call sed s/(.)e\w*/$1enis/gi k!~krok@unaffiliated/krok 2017/11/27 23:34:18 jp!ayy@youlosethega.me 2018/02/24 20:41:56
cousteau!~cousteau@unaffiliated/cousteau 2017/11/28 12:19:16 53 fuckup is /call urban $args | {penify '$args'} cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 12:03:52 k!~krok@unaffiliated/krok 2017/12/05 15:55:34
cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 10:38:25 6 fuckup2 is /call penify-hex &{hexenc $args} &{urban $args} cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:39:07 cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:39:38
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/18 15:24:06 21 gay is short for atkayyyyy jp!ayy@youlosethega.me 2018/01/14 06:20:08 nai!~naim@nai.im 2018/08/09 14:56:35
cousteau!~cousteau@unaffiliated/cousteau 2017/12/10 13:43:01 8 hexargs is /code perl print join " | ", map {join(" ", map {unpack "H2"} split //) . qq( "$_")} @ARGV; pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/04 16:24:47
cousteau!~cousteau@unaffiliated/cousteau 2017/11/28 05:31:45 5 hexd is /code c11 printf("|"); char *p; for (argv++; *argv; argv++) { for (p=*argv; *p; p++) printf(" %02hhX", *p); printf(" \""); for (p=*argv; *p; p++) if (isascii(*p) && isprint(*p)) putchar(*p); else printf("\uFFFD"); printf("\" |"); } cousteau!~cousteau@unaffiliated/cousteau 2017/12/06 11:49:09 cousteau!~cousteau@unaffiliated/cousteau 2017/12/06 11:50:50
cousteau!~cousteau@unaffiliated/cousteau 2017/11/27 12:19:29 11 hexdump is /code c11 printf("/say "); for (argv++; *argv; argv++) { for ( ; **argv; ++*argv) printf("%02hhX ", **argv); if (argv[1]) printf("%02hhX ", ' '); } cousteau!~cousteau@unaffiliated/cousteau 2017/11/27 12:19:45 cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 09:41:54
cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:34:25 5 hexenc is /code perl print unpack "H*", "@ARGV" cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:39:38
cousteau!~cousteau@unaffiliated/cousteau 2017/11/27 11:46:42 20 iconv is /code bash args=(); while [ $# -gt 0 ]; do case "$1" in (-f|-t|--from-code|--to-code) args=("${args[@]}" "$1" "$2"); shift 2;; (--) shift; break;; (*) break;; esac; done; printf '/say '; printf %s "$*" | iconv "${args[@]}" cousteau!~cousteau@unaffiliated/cousteau 2017/11/28 05:08:40
jp!ayy@youlosethega.me 2017/12/27 12:26:23 1 izabera is grill k!~krok@unaffiliated/krok 2017/12/27 12:26:46 atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/12/27 12:26:29
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/09 22:59:55 85 jp is pineapple mispple qang red green fat beam cloud not pro heartbreaker ban-evader fat chocolate pancake thot geeky nerd who never shuts the fuck up wang handler racis holocaust denier uncivilized clueless subtle penis unbelievable annoying kitten fat rolypoly chipmunk rolling on ground circus ass clown bobling bufoon shaved chimp scallywang sutpit jumbo penis large-terrestrial-monkey-having-a-doglike-muzzle emo alpaca ripe k!~krok@unaffiliated/krok 2018/06/14 22:56:34 iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/02 12:11:31
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/02 17:19:28 55 k is emo batman penis a birb gay fat excited roly-poly woodcock ragequit baby dumbass rainbow 50 shades of we-can't-break-up-i'm-gregnat crazy penis terrorist gay bean jporange pedantic poop pig code holocaust-denier-advocate alien sexbot do-not-trust-me-i-am-dumbs savage diddly kong racer funny bone poo hashâshīn fod fod fod mother of 🐢s don't-give-a-fuck-i-wrote-a-programming-language-instead sad spinny 🐢 mother of gingers little true true urbapenis jp!ayy@youlosethega.me 2018/06/14 14:22:51 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/20 14:25:42
jp!ayy@youlosethega.me 2018/01/13 17:51:44 3 kay is tiny sombrero jp!ayy@youlosethega.me 2018/01/13 18:36:00
lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 18:23:06 2 keko is /code python3 exec("for i in range(2):\n for j in range(3):\n print(\"cyka\")") Learath2!~learath2@unaffiliated/learath2 2018/01/02 12:26:38
lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 18:06:20 1 kkko is /code python3 for i in range(3):\n for j in range (2):\n print("cyka"); lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 18:06:24
kg!~krok@unaffiliated/krok/x-1434802 2017/09/30 13:20:12 5 kneads2 is /code c11 char nick[strlen("$args") + 1], kneadee[2048] = {0}; memcpy(nick, "$args", sizeof nick); if (strncmp(nick,"prag", 4) == 0) { memcpy(kneadee, (char [101 ^ 0x67]){0}, 2); } else { char tmp[] = "$randomnick"; memcpy(kneadee, tmp, (sizeof tmp > 2048) ? 2048 : sizeof tmp); } printf("%s%s%s%s","/me ", (strcmp("$0", "kneads") == 0) ?(arglen > 1) ? args[1] : "kneads" : "$0", " ", kneadee); kg!~krok@unaffiliated/krok/x-1434802 2017/09/30 13:23:15 kg!~krok@unaffiliated/krok/x-1434802 2017/09/30 13:28:05
kg!~krok@unaffiliated/krok/x-1434802 2017/09/09 11:37:21 20 knm is /code c11 if (!strcmp("kg", "$args") || !strcmp("krok", "$args") || !strcmp("k", "$args")) printf("$args is a great nick!"); else printf("$args really sucks."); k!~krok@unaffiliated/krok 2018/01/19 15:48:24 k!~krok@unaffiliated/krok 2018/04/18 16:21:01
lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 18:17:32 1 koko is /code python3 exec("for i in range(2):\n for j in range(3):\n print(\"cyka\")") lambda443!~lambda443@unaffiliated/lambda443 2017/10/10 18:17:35
qwename!~qwename@unaffiliated/qwename 2018/01/20 22:53:43 18 leviathan is /code c11 int min(int a, int b) { return a < b ? a : b; } int lev(const char *a, size_t a_len, const char *b, size_t b_len) { int cost; if (a_len == 0) { return b_len; } if (b_len == 0) { return a_len; } if (a[a_len-1] == b[b_len-1]) { cost = 0; } else { cost = 1; } return min(min(lev(a, a_len-1, b, b_len) + 1, lev(a, a_len, b, b_len - 1) + 1), lev(a, a_len - 1, b, b_len - 1) + cost); } int main(int argc, char *argv[]) { if (argc <= 2) { puts("Usage: lev string_a string_b"); return EXIT_SUCCESS; } printf("%d\n", lev(argv[1], strlen(argv[1]), argv[2], strlen(argv[2]))); } qwename!~qwename@unaffiliated/qwename 2018/01/20 22:58:49 qwename!~qwename@unaffiliated/qwename 2018/01/20 23:01:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/04 18:41:51 10 ls is /call echo &{sh ls} pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/04 18:42:27 jp!ayy@youlosethega.me 2018/02/11 00:10:45
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/04 19:01:11 1 ls2 is /call echo &{sh ls} pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/04 19:01:16
cousteau!~cousteau@unaffiliated/cousteau 2017/12/03 20:00:01 9 matchbalanced is /code perl "@ARGV" =~ m/, (?: ( \{ (?:(?1)|,(?2)|[^{}])* \} ) | ( ` (?:(?1)|,(?2)|[^`])* ` ) )/x; print $& # matches ,{...} or ,`...` possibly containing balanced sequences of {...} or ,`...` cousteau!~cousteau@unaffiliated/cousteau 2017/12/03 20:07:31 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/12 01:06:10
k!~krok@unaffiliated/krok 2018/01/18 18:50:11 3 mnrmnaugh is turtle babbling baboon croissant-connoisseur k!~krok@unaffiliated/krok 2018/05/31 16:12:08 k!~krok@unaffiliated/krok 2018/05/31 16:11:40
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/04 21:17:39 2 mt is /msg pragma- test jp!ayy@youlosethega.me 2017/12/04 21:18:00
qwename!~qwename@unaffiliated/qwename 2018/01/30 05:46:12 0 my_foo is $$0_bar nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/08 13:12:22 0 nil_says is wtf nobody
cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:52:50 26 penify is /code perl "@ARGV" =~ /(["'\'']?)(?<first>.)(?<rest>.*?)\1\s(?<thing>.*)/; print $+{thing} =~ s{(\Q$+{first}\E)(\Q$+{rest}\E)(s?)}{ '"'. (($1 eq lc $1) ? 'p' : 'P') . (($2 eq lc $2) ? 'enis' : 'ENIS') . ({S=>'ES', s=>'es', ''=>''}->{$3}) .'"' }reggie; cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 12:00:07 koisoke!xef4@epilogue.org 2019/06/01 10:48:55
cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:36:13 4 penify-hex is /code perl my($first,$rest) = (pack("H*", $ARGV[0]) =~ /^(.)(.*)$/); print "@ARGV[1..$#ARGV]" =~ s{(\Q$first\E)(\Q$rest\E)(s?)}{ (($1 eq lc $1) ? 'p' : 'P') . (($2 eq lc $2) ? 'enis' : 'ENIS') . ({S=>'ES', s=>'es', ''=>''}->{$3}) }gaier; cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 11:39:39
cousteau!~cousteau@unaffiliated/cousteau 2017/11/28 12:03:24 141 penify1 is /code perl my($first,$rest) = ($ARGV[0] =~ /^(.)(.*)$/); print "@ARGV[1..$#ARGV]" =~ s{(\Q$first\E)(\Q$rest\E)(s?)}{ '"'. (($1 eq lc $1) ? 'p' : 'P') . (($2 eq lc $2) ? 'enis' : 'ENIS') . ({S=>'ES', s=>'es', ''=>''}->{$3}) .'"' }reggie; cousteau`!~u291187@98.228.134.37.dynamic.jazztel.es 2017/12/02 02:37:56 jp!ayy@youlosethega.me 2017/12/28 15:09:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/28 15:04:39 198 pfact is /call kpenify $args <!magic!> &{ cfact $args } k!~krok@unaffiliated/krok 2018/05/15 17:14:29 pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/15 19:33:09
jp!ayy@youlosethega.me 2017/11/19 15:01:36 2 pipesed is /say echo $(<<<"$@" sed -r 's/\b[^ :]+: //g') jp!ayy@youlosethega.me 2017/11/21 12:11:53
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/07 13:11:29 1 poop is foo pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/07 13:11:34
jp!ayy@youlosethega.me 2017/11/28 15:21:13 19 pr2 is /call recall $args | { sed s/$arg[1]/penis/gi } jp!ayy@youlosethega.me 2017/11/28 15:21:46 k!~krok@unaffiliated/krok 2018/01/05 10:25:35
k!~krok@unaffiliated/krok 2018/01/05 14:28:57 24 pragma- is slow fat oreo boblefofle unicorn coffee dicktator bad ass meaney pragmatic realist ragequit-hating baby ignorwang stoic meat puppet dandy day jr. clam developer really a repsoitngut teddy bear deep down taught with pants down schmeckle dumbassius moo racist ice beam pirate taxi terrorist jp!ayy@youlosethega.me 2018/03/25 13:59:48 taylor!~krok@unaffiliated/krok 2019/08/25 12:05:34
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/28 15:18:11 17 precall is /call recall $args | { sed s/$arg[1]/penis/gi } pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/28 18:09:21
e!e@enucs/spy.edk 2018/04/01 16:05:10 0 prefix is benis nobody
e!e@enucs/spy.edk 2018/04/01 16:05:22 0 prefix_abc is beep boop nobody
e!e@enucs/spy.edk 2018/04/01 16:05:33 0 prefixtest is $prefix_abc $prefix_abc $prefix_abc nobody
qwename!~qwename@unaffiliated/qwename 2018/01/22 22:06:26 3 qwename is annoywang juventude cindery unsteadier ignorwanged to death jp!ayy@youlosethega.me 2018/01/22 22:36:55 qwename!~qwename@unaffiliated/qwename 2018/02/01 21:47:02
cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 17:38:07 3 rcc is /call recallcall cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 17:43:30
cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 17:24:27 6 recallcall is /call recall $arg[0] | {sed s/.*?> //} | {$arg[1:]} cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 17:36:28 cousteau!~cousteau@unaffiliated/cousteau 2017/12/09 17:43:30
cousteau!~cousteau@unaffiliated/cousteau 2017/12/05 10:26:51 5 repenify is /code perl my($first,$rest) = ($ARGV[0] =~ /^(.)(.*)$/); print "@ARGV[1..$#ARGV]" =~ s{($first)($rest)(s?)}{ '"'. (($1 eq lc $1) ? 'p' : 'P') . (($2 eq lc $2) ? 'enis' : 'ENIS') . ({S=>'ES', s=>'es', ''=>''}->{$3}) .'"' }reggie; pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/05 15:56:17
kp 2007/11/19 18:57:25 2 resistance is futile. k!~krok@unaffiliated/krok 2017/11/09 21:06:16
k!~krok@unaffiliated/krok 2018/01/26 11:49:41 2 resolve is /call hit jp!ayy@youlosethega.me 2018/01/26 11:50:34
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/30 16:36:22 2 rm is fuag jp!ayy@youlosethega.me 2018/02/25 21:00:40
k!~krok@unaffiliated/krok 2018/01/13 16:58:42 2 rms is large dirty gnu fstd!~fstd@unaffiliated/fisted 2019/04/30 15:39:13
jp!ayy@youlosethega.me 2018/01/12 19:31:13 1 rofl is de-wang nil!~n@monade.li 2019/05/27 11:45:12
jp!ayy@youlosethega.me 2017/11/23 15:03:56 44 sbrecall2 is /call recall $args | {spengebab} jp!ayy@youlosethega.me 2017/11/23 15:04:12 jp!ayy@youlosethega.me 2017/11/25 23:50:46
jp!ayy@youlosethega.me 2017/11/20 23:11:20 1 secure is acknowledged: frog now secure. jp!ayy@youlosethega.me 2017/11/20 23:11:26
qwename!~qwename@unaffiliated/qwename 2017/12/12 03:54:31 30 silent is /call sh echo $'\0' qwename!~qwename@unaffiliated/qwename 2017/12/12 21:35:18
qwename!~qwename@unaffiliated/qwename 2018/01/23 20:20:47 0 ss is " " nobody
qwename!~qwename@unaffiliated/qwename 2017/11/29 04:57:41 3 stub is /code c11 putchar(0); qwename!~qwename@unaffiliated/qwename 2017/11/29 04:58:32 qwename!~qwename@unaffiliated/qwename 2017/11/29 04:58:34
lol!lol@lol 2017/11/29 02:59:11 0 stubme is like an arrow nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 01:48:45 4 t2 is { $a = 5; for (--$a) {} } pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 01:52:05 [\!~qwename@unaffiliated/qwename 2017/11/28 22:15:51
cousteau!~cousteau@unaffiliated/cousteau 2017/12/10 05:02:52 25 temp is /code sh _action="$1"; _x="temp/$2"; shift 2; case "$_action" in (s*) mkdir -p temp; printf '%s ' "$*" >"$_x";; (t*) mkdir -p temp; printf '%s ' "$*" | tee "$_x";; (l*) cat "$_x"; for _i; do cat "temp/$_i"; done;; (a*) printf '%s ' "$*"; cat "$_x";; (p*) cat "$_x"; printf '%s ' "$*";; (r*|d*) rm -Rf "$_x"; for _i; do rm "temp/$_i"; done;; esac cousteau!~cousteau@unaffiliated/cousteau 2017/12/10 05:59:30 cousteau!~cousteau@unaffiliated/cousteau 2017/12/10 13:28:50
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/05/26 12:58:44 0 test is this is "a test" of shit nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/07 13:09:22 6 test space is foo bar k!~krok@unaffiliated/krok 2018/08/08 17:15:20
k!~krok@unaffiliated/krok 2018/06/29 18:54:34 1 test. is /say balls k!~krok@unaffiliated/krok 2018/06/29 18:54:44
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/11 14:31:35 0 test2 is test nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/05 10:34:42 0 test42 is &{wtf} nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/15 00:32:54 7 testsh is /code sh echo "arglen: $#, args: $*" pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/15 16:26:19
cousteau 2012/08/26 18:11:34 17 tossdie is /me tosses a die, it lands on $dies pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/04 15:41:37
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 01:38:59 13 tt is { @a = qw/1 2 3 4 5/; @b = grep { $_ > 3 } @a; "@b" } pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 01:49:40 pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 01:50:08
jp!ayy@youlosethega.me 2017/11/27 18:44:20 10 ttt is /code bash echo "🐶" "å" "⇒⊃⇔∃∀≔⊤⊥⊢⊨" "$@" pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/27 19:09:21
jp!ayy@youlosethega.me 2017/11/27 18:47:04 6 tttt is /code c11 puts("🐶" "å" "⇒⊃⇔∃∀≔⊤⊥⊢⊨"); jp!ayy@youlosethega.me 2017/11/27 18:47:37 jp!ayy@youlosethega.me 2017/11/27 19:09:36
kg!~krok@unaffiliated/krok/x-1434802 2017/10/08 13:50:03 2268 u is /call urban pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/16 19:31:35 nai!~naim@monade.li 2019/05/04 11:04:45
zalt!~lambda443@unaffiliated/lambda443 2019/07/03 19:18:34 0 url is -f -url http://ix.io/1NEj nobody
zalt!~lambda443@unaffiliated/lambda443 2019/07/03 19:54:31 17 utc2 is /code python3 import sys, datetime; sys.argv += ['0'] try: print(datetime.datetime.utcnow() + datetime.timedelta(hours=int(sys.argv[1]))) except: if not sys.argv[1].lower().startswith('-h'): print('Invalid argument: "{}"'.format(sys.argv[1])) print('Usage: utc [offset hours]') bungey!~chaos@unaffiliated/pragmatic-chaos 2019/07/07 11:54:20
cousteau 2012/07/06 03:41:08 60 void is http://thecodelesscode.com/case/5 arethusa!~jfdsak@ool-182fc987.dyn.optonline.net 2019/08/30 16:45:11
jp!ayy@youlosethega.me 2017/11/25 22:17:38 21 vrb is /code bash printf "%q " "$*" | tr aeiouAEIOU eiouaEIOUA pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/11/25 22:31:50 jp!ayy@youlosethega.me 2018/03/16 15:43:33
jp!ayy@youlosethega.me 2018/01/13 16:06:03 45 wfact is /call cfact $args | {sed s/$args/wang/gi} jp!ayy@youlosethega.me 2018/02/25 17:57:55 jp!ayy@youlosethega.me 2018/04/11 17:29:35
zalt!~lambda443@unaffiliated/lambda443 2019/07/03 19:07:37 1 zep is /code perl use DateTime; print('hell0' ) zalt!~lambda443@unaffiliated/lambda443 2019/07/03 19:07:40
jp!ayy@youlosethega.me 2017/11/23 14:02:59 0 zreplace is /code zsh () { sed "s/$*/penis/gi"} } nobody
qwename!~qwename@unaffiliated/qwename 2017/12/12 00:57:22 1 {echo is shoot qwename!~qwename@unaffiliated/qwename 2017/12/12 00:57:41
qwename!~qwename@unaffiliated/qwename 2017/11/29 04:12:55 1 is searchforzero qwename!~qwename@unaffiliated/qwename 2017/11/29 04:13:16

#pbot2-test


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 21:26:36 0 a b is lol pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 21:26:42 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/12/11 13:49:16 4 dewango is rofl jp!ayy@youlosethega.me 2018/02/25 20:33:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 10:42:15 1 f is /call add pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 10:42:22
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/08 17:42:31 0 foo is WTF WTF pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 15:32:28 nobody
bungy!~chaos@unaffiliated/pragmatic-chaos 2019/06/30 20:58:44 0 kpenifynew is /code perl no warnings; my $_a = "@ARGV"; my $_b = "@ARGV"; $_a =~ s/\s*<!magic!>.*$//ms; $_b =~ s/^.*?<!magic!>\s*//ms; $_a =~ s/(?:(?<=\s)|(?<=^))-(?!m)[[:alpha:]]+\s*\S+\s*//gms; $_a =~ s/(?:(?<=\s)|(?<=^))-m\w+//gms; $_a =~ s/(?:(?<=\s)|(?<=^))-m\s+\w+//gms; $_a =~ s/^\s*(.*?)\s*$/$1/gms; $_b =~ s|(\Q$_a\E)|$1=~/^[A-Z][^A-Z]/?"Penis":($1=~/^[A-Z]+$/?"PENIS":"penis")|gie; $_d = $_b; while ($_d=~/(?:like(?: a|the| that| those)?|e.?g.?|example|instance|by(?: a| the| that| those| its)?|results in|such as|whose),?\s+(\w{3,})/gms) { $_c=$1;$_c=~s/(?<![aeiou])s$//ms; $_b=~s|($_c)|$1=~/^[A-Z][^A-Z]/?"Wang":($1=~/^[A-Z]+$/?"WANG":"wang")|gie; } $_b=~s|(peniss)| $1 =~ /^[A-Z][^A-Z]/ ? "Penises" : ($1 =~ /^[A-Z]+$/ ? "PENISES" : "penises")|gie; $_b=~s|(penisd)| $1 =~ /^[A-Z][^A-Z]/ ? "Dicked" : ($1 =~ /^[A-Z]+$/ ? "DICKED" : "dicked")|gie; $_b=~s,(big|huge|massive|small|tiny), $1 =~ /^[A-Z][^A-Z]/ ? "Engorged" : ($1 =~ /^[A-Z]+$/ ? "ENGORGED" : "engorged"),gie; $_b=~s|(penisns)| $1 =~ /^[A-Z][^A-Z]/ ? "Penises" : ($1 =~ /^[A-Z]+$/ ? "PENISES" : "penises")|gie; $_b=~s|(penis\w\b)| $1 =~ /^[A-Z][^A-Z]/ ? "Penis" : ($1 =~ /^[A-Z]+$/ ? "PENIS" : "penis")|gie; $_b=~s|(an)\s+(?=penis)| $1 =~ /^[[:upper:]]/ ? "A " : "a "|gie; print $_b nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/09 15:52:06 5 meth is gay is foo pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/08/09 22:41:19
bungy!~chaos@unaffiliated/pragmatic-chaos 2019/06/30 20:42:55 0 newsed is /code perl no warnings; if ("@ARGV" =~ /^s(.)(.*?)(?<!\\)\1(.*?)(?<!\\)\1(\S*)\s+(.*)/p) { ($_a, $_r, $_g, $_m, $_t) = ($5,"'\"$3\"'", index($4,"g") != -1, $4, $2); if ($_m=~/P/) { $_r =~ s/^'"(.*)"'$/$1/; $_m=~s/P//g; if($_g) { $_a =~ s|(?$_m)($_t)|$1=~/^[A-Z][^A-Z]/?ucfirst$_r:($1=~/^[A-Z]+$/?uc$_r:$_r)|gie; } else { $_a =~ s|(?$_m)($_t)|$1=~/^[A-Z][^A-Z]/?ucfirst$_r:($1=~/^[A-Z]+$/?uc$_r:$_r)|ie; } } else { if ($_g) { $_a =~ s/(?$_m)$_t/$_r/geee; } else { $_a=~s/(?$_m)$_t/$_r/eee; } } print $_a; } else { print "syntax error"; } nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/02 00:22:40 0 nums is 0 5 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/12 05:10:46 25 pc is /code c11 printf("arglen: %d\n", arglen); for (int i = 0; i < arglen; i++) printf("arg %d = %s, ", i, args[i]); pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/12 14:29:20 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/02/23 20:37:51
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/12 04:43:15 19 pt is /code perl my $i = 0; print "arglen: ", scalar @args, "; args: [@args]; ", join ', '; print "args = [$args]"; pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/21 09:27:25 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/21 09:27:35
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/18 17:54:40 10 t2 is /code perl system("@ARGV"); pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/18 19:58:45 praggy!~chaos@unaffiliated/pragmatic-chaos 2017/09/18 21:45:07
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/06 10:42:22 0 test is /call echo &{echo hi} nobody 2019/08/06 10:41:39
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 13:45:31 0 test foo is wtf wtf pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/09 13:51:16 nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/15 16:09:22 14 testjava is /code java System.out.println("Num args: " + args.length); int i = 0; for (String arg : args) { System.out.println("arg " + i++ + ": " + arg); } pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/15 16:25:34 pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/25 13:37:16
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/06/02 21:52:35 0 testquotes is 'she said "lol let\'s go to the ball game"' "fourscore and 7 year's ago" blah orange nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/18 17:48:00 21 tt is /code perl use Storable; my $foo = retrieve 'data'; use Data::Dumper; print Dumper $foo; pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/09/18 17:51:48 praggy!~chaos@unaffiliated/pragmatic-chaos 2017/09/18 21:25:02

#philosophy


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pragma_ 2010/01/03 00:00:29 2 death is http://www.newscientist.com/article/mg19626252.800 mnrmnaugh!~mnrmnaugh@unaffiliated/mnrmnaugh 2018/02/20 18:24:39
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 16:43:23 1 earth is /say The Earth is flat. pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/08/23 16:43:26
Nately 2010/01/27 00:20:56 4 everything is for the best, right? nil!n@monade.li 2019/07/19 09:53:00
pragma_ 2009/12/07 11:17:27 2 evilandomnipotence is http://www.ditext.com/mackie/evil.html nil!n@monade.li 2019/07/19 09:53:07
pragma_ 2009/11/23 03:15:55 12 existence is /say The most basic property is the property that there are no properties; which is a property in itself. The most basic object is the void; which by the same vein of the first sentence means that there cannot be a void. Everything and nothing is filled with something. Existence is simply a paradox of contradictions and opposite reactions. Ones and zeroes, truth and fiction. Everything that shall be will be. A collective imagination of sentience. mthowe-!uid249081@gateway/web/irccloud.com/x-uid249081 2017/09/02 23:37:06
pragma_ 2007/11/06 08:21:47 23 fool is /say He who asks a question may be a fool for five minutes; he who does not ask a question remains a fool forever. krok_!~krok@static-50-53-171-198.bvtn.or.frontiernet.net 2017/05/11 10:50:33
pragma_ 2008/12/04 02:42:09 1 gamers is http://infovore.org/talks/if-gamers-ran-the-world/ mthowe!~morganh@unaffiliated/mthowe 2017/08/31 02:15:36
pragma_ 2010/06/29 06:32:22 2 mankind is http://etext.virginia.edu/toc/modeng/public/VanStor.html Remoun 2010/11/27 12:20:31
pragma_ 2010/03/27 15:45:05 0 meaning is http://users.aristotle.net/~diogenes/meaning1.htm nobody
pragma_ 2009/12/10 14:46:43 5 meat is http://baetzler.de/humor/meat_beings.html -- What aliens would say if they discovered Earth tires!~pi@cpe-172-101-20-238.maine.res.rr.com 2018/02/26 18:39:09
pragma_ 2009/11/20 18:43:42 2 onedim-man is http://www.marcuse.org/herbert/pubs/64onedim/odmcontents.html JodaZ 2010/09/22 20:29:57
pragma_ 2009/11/23 00:48:58 3 phil31 is http://philosophy.ucsd.edu/faculty/dbrink/courses/31-05/ cousteau!~cousteau@138.100.74.81 2013/11/04 02:55:12
pragma_ 2009/11/18 16:23:55 5 questions is http://www.roangelo.net/logwitt/logwit12.html rvraghav93!~quassel@117.216.41.36 2014/03/29 09:38:21
pragma_ 2010/08/19 14:08:58 3 scale is /say The scale of the Universe: http://htwins.net/scale/index.html nil!~n@monade.li 2019/05/10 10:11:48
upd 2007/08/03 15:46:36 28 sky is /say The sky is $colors. Tires!~Tires@cpe-172-101-20-238.maine.res.rr.com 2017/08/23 16:43:00
_pragma 2008/02/22 00:42:07 1 stinkin-thinkin is http://psychcentral.com/lib/2006/the-top-10-types-of-stinkin-thinkin/ pragma_
pragma_ 2009/12/28 18:59:49 2 theworld is http://strangemaps.files.wordpress.com/2006/11/800px-reagan-digitised-poster.JPG -- http://interactive.usc.edu/members/nsharkasi/americanworld.jpg -- http://cdn.epltalk.com/wp-content/uploads/2009/10/world-according-to-americans.jpg -- http://img293.imageshack.us/img293/2952/usworldem8.jpg nitrix!~nitrix@unaffiliated/nitrix 2013/08/24 10:35:44
pragma_ 2009/11/30 06:50:05 2 thingswedo is http://faculty.ed.uiuc.edu/g-cziko/twd/pdf/index.html nil!n@monade.li 2019/07/19 09:52:54
pragma_ 2010/06/03 15:51:08 9 trolley is http://www.saintgasoline.com/comics/2007-03-04-Allegory_of_Trolley_Problem_Paradox.JPG alyptik!ayy@youlosethega.me 2017/08/29 01:59:28
pragma_ 2009/12/07 13:29:20 2 validity is http://www.jimpryor.net/teaching/vocab/validity.html n00p

global


owner created on times referenced factoid last edited by edited date last referenced by last referenced date
pragma-!~chaos@unaffiliated/pragmatic-chaos 2017/02/26 15:00:03 5 (y) is /say ( y ) is MSN Messenger for the "Thumbs Up" emoticon. It's not an IRC thing. No IRC clients translate it. Pidgin is not an IRC client. It's an instant messenger with a proof-of-concept half-arsed IRC plugin. Knock it off. pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/03/05 14:00:30
pragma_ 2009/08/30 21:59:11 385 /say is /call say Sai18!42b9a3be@66.185.163.190 2019/09/03 11:12:50
pragma_ 2010/01/02 11:46:45 4 10words is http://theoatmeal.com/comics/misspelling cousteau!~cousteau@80.174.59.17.dyn.user.ono.com 2015/08/11 16:03:58
Jafet 2008/07/10 10:09:55 5 20q is /say If you have a question, please be specific and concise. Don't ask questions like 'Does anyone know how to ...' or 'What is the best way to ...'. We do not have the time or patience to play a game of 20 questions with people that are not capable of articulating properly. See also: http://catb.org/~esr/faqs/smart-questions.html doppel!~doppel@ip68-96-169-47.lv.lv.cox.net 2015/01/20 18:06:39
kate` 2007/04/20 03:18:49 24 21days is http://norvig.com/21-days.html e!e@freenode/staff/spy.edk 2019/08/29 09:45:56
pragma_ 2007/07/03 18:45:30 7 2html.vim is #!/bin/sh vim -n -c ':so \$VIMRUNTIME/syntax/2html.vim' -c ':wqa' \$1 > /dev/null 2> /dev/null pragma-!~chaos@unaffiliated/pragmatic-chaos 2014/02/28 01:24:01
pragma_ 2010/01/02 22:54:24 6 6thsense is http://www.movie-moron.com/wp-content/gallery/various/I-See-Stupid-People.jpg pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/25 20:37:00
pragma_ 2007/11/01 13:20:17 4288 8ball is /say $nick, $answers:global

with_args: /say $nick, $answers:global
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/10/05 01:59:39 nh!NextHendri@unaffiliated/nexthendrix 2019/09/06 05:39:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2018/01/13 13:06:29 7 911 is /say Hello, what's the nature of your emergency? k!~krok@unaffiliated/krok 2018/01/13 16:11:58
pragma_ 2007/05/24 17:25:10 59 :( is /call :) mort!~mort96@188.166.114.29 2019/08/23 00:34:37
pragma_ 2005/02/25 12:58:41 276 :) is /call say $faces pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/06 01:52:22 mort!~mort96@188.166.114.29 2019/08/23 00:34:37
pragma_ 2007/05/24 17:25:43 2 :-( is /call :) n-!~n@monade.li 2019/05/07 12:32:09
pragma_ 2007/05/24 17:25:25 8 :-) is /call :) iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/03 10:10:43
pragma_ 2007/05/24 17:25:38 0 :-D is /call :) nobody
pragma_ 2007/05/24 17:25:30 2 :-P is /call :) yobo2
pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/08/08 11:00:44 0 :-o is /call :) nobody
pragma_ 2007/05/24 17:25:34 0 :-p is /call :) nobody
pragma_ 2007/05/24 17:25:17 36 :D is /call :) iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/07 12:33:03
pragma_ 2007/05/24 17:25:21 13 :o is /call :) jp!ayy@youlosethega.me 2018/06/13 18:16:38
pragma_ 2007/05/24 17:25:14 12 :p is /call :) grl_!5cdc4537@gateway/web/freenode/ip.92.220.69.55 2017/06/23 11:20:27
pragma_ 2005/02/28 22:11:43 52 ;) is /call me $body_action seductively. pragma-!~chaos@unaffiliated/pragmatic-chaos 2015/04/06 01:51:44 nanozz!nanoz@gateway/vpn/protonvpn/nanoz 2019/08/20 21:14:02
pragma-!~chaos@unaffiliated/pragmatic-chaos 2016/08/24 22:01:03 14 <3 is /call lovequote iamgarp!~chaos@unaffiliated/pragmatic-chaos 2019/05/07 12:33:54
Major-Willard 2005/02/20 18:55:48 4 APPALLING is Acronym Production Particularly At Lavish Level Is No Good mhi^ 2013/01/18 05:31:28
Wulf_ 2009/05/20 22:20:41 1 BFS is Breadth First Search -- http://en.wikipedia.org/wiki/Breadth-first_search zacs7
fluter!~fluter@fedora/fluter 2015/10/27 02:54:47 7 CaZe is What? fluter!~fluter@fedora/fluter 2015/10/27 03:02:49 atk!Arch-TK@ircpuzzles/staff/Arch-TK 2017/07/31 12:26:08
prec 2007/03/21 10:24:56 2 GIGO is garbage in, garbage out J4ck_4l0n3!~u0_a108@host178-183-dynamic.56-82-r.retail.telecomitalia.it 2017/12/30 09:24:24
Wulf_ 2009/09/15 09:13:43 1 IB is implementation defined behaviour no-n!sid257727@gateway/web/irccloud.com/x-sid257727 2019/08/07 00:10:22
Major-Willard 2005/02/20 17:00:50 0 IMP is Interface Message Processor nobody
PoppaVic 2010/02/20 18:03:48 2 LE is Learning Experience. Any LE is a good one, as long as you survive it. mhi^ 2013/01/18 05:31:35
vorpal 2007/07/05 22:49:02 3 LFS is http://en.wikipedia.org/wiki/Large_file_support pragma_ 2011/02/14 00:34:42
LostDatagram!~david@188.226.210.76 2014/04/20 23:33:05 0 LostDatagram is currently away, try again later nobody
Lt-Col-Kilgore 2005/01/27 16:21:09 1 Lt-Col-Kilgore is 1st of the 9th, air-mobile mhi^ 2013/01/18 05:31:45
pragma_ 2012/01/24 05:51:26 0 MSDN is /say Microsoft Developer Network: http://msdn.microsoft.com nobody
defrost 2005/01/01 07:50:21 10 Major-Willard is a $sizes $colors gun totin non-jesus freak k!~krok@unaffiliated/krok 2017/11/12 20:16:55
nil!~n@monade.li 2019/05/11 17:45:56 5 NI is /say Ni! nil!~n@monade.li 2019/08/30 18:13:42
Tom^ 2005/02/12 03:10:49 5 Pascal is "A program language named after a man who would turn over in his grave if he knew about it." terabit!~citizen4@unaffiliated/terabit 2015/03/15 15:20:39
Major-Willard 2005/01/28 22:09:11 1 Plan9 is written in C, it's free and you can find it here: http://plan9.bell-labs.com/plan9dist or /join #plan9 solar_sea 2010/11/24 03:18:04
PoppaVic 2011/07/22 16:28:24 2 PoppaVic is Get yer own damned noise. PoppaVic 2011/07/22 16:29:38
Major-Willard 2005/01/27 21:32:55 0 QED is from the Latin; therin lies the proof nobody
pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/03 07:43:58 1 S3xyL1nux is /say S3xyL1nux sucks. pragma-!~chaos@unaffiliated/pragmatic-chaos 2019/08/03 07:44:00
Tom^ 2005/02/04 10:21:19 5 SDL is http://www.libsdl.org ap0c!~ap0c@unaffiliated/ap0c 2016/10/05 02:17:47
Major-Willard 2005/02/24 16:42:37 2 SNAFU is Situation Normal All Fucked Up Major-Willard
PoppaVic 2005/02/04 10:50:01 1 SOP is "Standard Operating Procedure" sjohnson!~sjohnson@cow.sj.rfc1459.net 2018/02/15 12:26:13
Major-Willard 2005/02/24 16:46:47 0 TARFU is Things Are Really Fucked Up nobody
PoppaVic 2005/02/07 09:40:20 6 TIL is "Threaded Interpretive Language" fstd!~fstd@unaffiliated/fisted 2019/05/04 16:32:38
PoppaVic 2005/02/04 08:44:54 1 TLI is "Too Little Info" PoppaVic
PoppaVic 2005/02/04 08:45:24 1 TMI is "Too Much Info" PoppaVic
Wulf_ 2008/12/13 15:39:35 10 UTSL is /say Use the source, Luke! Wulf4
nai!~naim@monade.li 2019/04/29 14:27:00 7 X86 is /call fnord |