Knowledge (XXG)

Files transferred over shell protocol

Source 📝

36: 211:
Fish commands are all defined, shell equivalents may vary. Fish commands always have priority: the server is expected to execute a fish command if it understands it. If it does not, however, it can try to execute a shell command. When there is no special server program, Unix shell ignores the fish
447: 53: 491: 100: 72: 245:
as the command executed on remote machine. This should make it possible for the server to distinguish FISH connections from normal RSH or SSH.
79: 327:
TRAMP some time ago, but support was removed (although TRAMP still can use shell connections in a similar way using tramp-sh.el script file)
86: 119: 68: 57: 389:"Feature: Consider porting FISH(FIle transfer over SHell filesystem) from Midnight Commander · Issue #1819 · elfmz/Far2l" 342: 93: 46: 318: 233:. The codes 000 and 001 are special, their meaning depends on presence of server output before the end line. 376: 361: 311: 476: 459: 140: 190:) on the server, which executes FISH commands instead of Unix shell and thus speeds up operations. 158:
The advantage of FISH is that all it requires on the server-side is an SSH or RSH implementation,
280: 194: 428: 408: 193:
The protocol was designed by Czech Linux Kernel Hacker, Pavel Machek, in 1998 for the
485: 152: 186:
on the server side). Optionally, there can be a special FISH server program (called
148: 144: 271:
which indicates supported version of the FISH protocol and supported extensions.
285: 179: 35: 208:#FISH_COMMAND arguments... equivalent shell commands, which may be multi-line 171: 159: 388: 17: 303: 175: 307: 262:#VER 0.0.2 <feature1> <feature2> <...> echo '### 000' 377:
https://github.com/MidnightCommander/mc/blob/master/src/vfs/fish/fish.c
433: 413: 393: 178:—unlike other methods of remote access to files via a remote shell, 212:
command as a comment and executes the equivalent shell command(s).
337: 324: 229:
is the return code. Return codes are a superset to those used in
290: 163: 299: 296: 230: 29: 167: 256:
to negotiate FISH protocol, its version and extensions.
265:
The server may reply to VER command with a lines like
429:"Kio-extras/Fish/Fish.CPP at master · KDE/Kio-extras" 215:Server replies are multi-line, but always end with 60:. Unsourced material may be challenged and removed. 205:Client sends text requests of the following form: 241:The client initiates SSH or RSH connection with 268:VER 0.0.0 <feature2> <...> ### 200 259:#FISH echo; start_fish_server; echo '### 200' 248:The first two commands sent to the server are 8: 366:- via Midnight Commander Official Repository 155:between computers and manage remote files. 409:"LFTP/SRC/Fish.cc at master · lavv17/LFTP" 120:Learn how and when to remove this message 354: 69:"Files transferred over shell protocol" 133:Files transferred over Shell protocol 7: 58:adding citations to reliable sources 477:README.fish from Midnight Commander 25: 34: 492:Network file transfer protocols 225:is a prefix to mark this line, 45:needs additional citations for 1: 218:### xyz<optional text> 182:for example, which requires 508: 343:SSH File Transfer Protocol 460:"Re: Tramp's fish method" 323:FISH was implemented in 162:, and a set of standard 448:related commit in Emacs 54:improve this article 281:Midnight Commander 243:echo FISH:;/bin/sh 237:Session initiation 195:Midnight Commander 201:Protocol messages 188:start_fish_server 130: 129: 122: 104: 27:Computer protocol 16:(Redirected from 499: 464: 463: 456: 450: 445: 439: 438: 425: 419: 418: 405: 399: 398: 385: 379: 374: 368: 359: 255: 251: 244: 228: 224: 166:utilities (like 125: 118: 114: 111: 105: 103: 62: 38: 30: 21: 507: 506: 502: 501: 500: 498: 497: 496: 482: 481: 473: 468: 467: 458: 457: 453: 446: 442: 427: 426: 422: 407: 406: 402: 387: 386: 382: 375: 371: 360: 356: 351: 334: 277: 275:Implementations 269: 263: 260: 253: 249: 242: 239: 226: 222: 219: 209: 203: 197:software tool. 139:) is a network 126: 115: 109: 106: 63: 61: 51: 39: 28: 23: 22: 15: 12: 11: 5: 505: 503: 495: 494: 484: 483: 480: 479: 472: 471:External links 469: 466: 465: 451: 440: 420: 400: 380: 369: 353: 352: 350: 347: 346: 345: 340: 333: 330: 329: 328: 321: 315: 293: 288: 283: 276: 273: 267: 261: 258: 238: 235: 217: 207: 202: 199: 153:transfer files 128: 127: 42: 40: 33: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 504: 493: 490: 489: 487: 478: 475: 474: 470: 461: 455: 452: 449: 444: 441: 436: 435: 430: 424: 421: 416: 415: 410: 404: 401: 396: 395: 390: 384: 381: 378: 373: 370: 367: 365: 358: 355: 348: 344: 341: 339: 336: 335: 331: 326: 322: 320: 316: 313: 309: 305: 301: 298: 294: 292: 289: 287: 284: 282: 279: 278: 274: 272: 266: 257: 246: 236: 234: 232: 216: 213: 206: 200: 198: 196: 191: 189: 185: 181: 177: 173: 169: 165: 161: 156: 154: 150: 146: 142: 138: 134: 124: 121: 113: 110:December 2009 102: 99: 95: 92: 88: 85: 81: 78: 74: 71: –  70: 66: 65:Find sources: 59: 55: 49: 48: 43:This article 41: 37: 32: 31: 19: 18:FISH protocol 454: 443: 432: 423: 412: 403: 392: 383: 372: 363: 357: 270: 264: 247: 240: 220: 214: 210: 204: 192: 187: 183: 157: 149:Remote Shell 145:Secure Shell 136: 132: 131: 116: 107: 97: 90: 83: 76: 64: 52:Please help 47:verification 44: 349:References 160:Unix shell 143:that uses 80:newspapers 304:konqueror 151:(RSH) to 147:(SSH) or 486:Category 332:See also 317:fish as 308:Krusader 300:kioslave 295:fish:// 141:protocol 319:tcl-vfs 312:Dolphin 94:scholar 434:GitHub 414:GitHub 394:GitHub 364:Fish.c 362:File: 302:(with 221:line. 96:  89:  82:  75:  67:  338:SSHFS 325:Emacs 286:far2l 101:JSTOR 87:books 291:Lftp 252:and 250:FISH 164:Unix 137:FISH 73:news 310:or 297:KDE 254:VER 231:FTP 227:xyz 223:### 184:scp 180:scp 174:or 172:cat 56:by 488:: 431:. 411:. 391:. 306:, 176:dd 170:, 168:ls 462:. 437:. 417:. 397:. 314:) 135:( 123:) 117:( 112:) 108:( 98:· 91:· 84:· 77:· 50:. 20:)

Index

FISH protocol

verification
improve this article
adding citations to reliable sources
"Files transferred over shell protocol"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
protocol
Secure Shell
Remote Shell
transfer files
Unix shell
Unix
ls
cat
dd
scp
Midnight Commander
FTP
Midnight Commander
far2l
Lftp
KDE
kioslave
konqueror

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.