For Yosemite (10.10) and El Capitan (10.11) and macOS Sierra (10.12):
sudo lsof -iTCP -sTCP:LISTEN -n -P
sudo lsof -iTCP -sTCP:LISTEN -n -P
<session-config>
<session-timeout>5</session-timeout>
</session-config>
"Ой чий то кінь стоїть, що сива гривонька"
"Ой чий то кінь стоїть, що * гривонька"
-compiler и -printcompilation . Обычно неплохо получить несколько снимков за короткий промежуток времени, чтобы не снять тот, момент, когда злоумышлениик спрятался. Указываем pid промежуток времени в милисекундах между снимками и количество снимков.$ jps
$ jstack 24151 > stacktrace.log
$ top -РВидим потоки jvm отдельными(linux системные потоки). Замечаем, какие потоки едят процессорные мощности, запоминаем их идентификаторы.
$ grep -A30 0x5FB9 stacktrace.log
defaults write com.apple.finder AppleShowAllFiles -bool trueНо лучше:) Command + Shift + '.' (Dot)
killall Finder
$ jar tvf ROOT.war | grep javax.inject 2497 Tue Jun 28 05:26:26 CEST 2016 WEB-INF/lib/javax.inject.jar2) Установить zip утилиту (
yum install zip или apt-get install zip)$ zip -d ROOT.war WEB-INF/lib/javax.inject.jar deleting: WEB-INF/lib/javax.inject.jar4) Убедиться, что файл удалился
$ jar tvf ROOT.war | grep javax.inject $
select DISTINCT dbms_lob.substr(COL_OF_CLOB_TYPE, 32000, 1) from ...;
args = (1, 2, 3) # usually a tuple, always an iterable* f(*args) → f(1, 2, 3)
kwargs = {"a": 1, "b": 2, "c": 3} # usually a dict, always a mapping*
f(**kwargs) -> f(1, 2, 3) # if you have `def f(a=0, b=0, c=0)`
sudo mount -t nfs -o resvport,rw 192.168.11.175:/home/data /Users/aieremenko/pr/pap/liferay-portal-6.2-ee/data
task copyJpegs(type: Copy) {
from images
include '*.jpg'
into 'build'
}
task copyImageFoders(type: Copy) {
from('images') {
include '*.jpg'
into 'jpeg'
}
from('images') {
iclude '*.gif'
into 'gif'
}
into 'build'
}
task zipImages(type: Zip) {
baseName = 'images'
destinationDir = file('build')
from 'images'
}
task zipImageFolders(type: Zip) {
baseName = 'images'
destinationDir = file('build')
from('images') {
include '*.jpg'
into 'jpeg'
}
from('images') {
include '*.gif'
into 'gif'
}
}
task deleteBuild(type: Delete) {
delete 'build'
}
task unpackBundle(type: Copy) {
from zipTree('build/web.zip')
into 'build/exploded'
}
myTask.onlyIf(new Spec() { boolean isSatisfiedBy(Task task) { return task.dependsOnTaskDidWork(); } });
task myTask1 << {}
По сути:
project.task("myTask1", { doLast {}})
А теперь плавный переход от последнего к первому, чтобы было понятно, как такое может быть. Шаг1
task("myTask1", { doLast {}})
Шаг2
task "myTask1" { doLast {}}
Шаг3
task myTask1 << doLast {}
Все по правилам груви + понимание того, что скрипт всегда выполняется в контексте глобального обьекта project.myTask.description="My description"
myTask.group="Some group"
myTask.doLast({println "Do it last"})
myTask.doFirst {println "Do it first"}
myTask.leftShift {println "Do this even more last"} //leftShift is a method in groovy Object which provides possibility to execute provided closure when applying operator << for instance of the class. Этот метод таски считается алиасом doLast.
myTask << {println "Do this last of all"} //leftShift can be also defined by opertor <<
Методы do* не перегружают предыдущие замыкания, а добавляют в очередь, которая выполняется по порядку.
task myTask2 << {
println "Do it last"
}
task("myTask3", {
description "Some"//this calls setter setDescription("Some")
group="Some group"//this also callss setter, but we need always use = for collections
doLast({println "Do it last"})
doFirst {println "Do it first"}
leftShift {println "Do this even more last"}
})
Или же все по сахарному, как и должно это писаться:
task myTask3 {
description "Some"
group "Some group"
doLast {println "Do it last"}
doFirst {println "Do it first"}
leftShift {println "Do this even more last"}
}
task myTask3(description: "Some") << {println "Do it last"}
Единственное где мы обязанны пользоваться, только такой установкой свойства, это типизированная таска.
class A {
private static int v = func();
private static int func() {
System.out.print("A");
return 0;
}
}
class B {
private static int v = func();
public static int func() {
System.out.print("B");
return 0;
}
}
class C {
private static int v = func();
public static int func() {
System.out.print("C");
return 0;
}
}
class Question {
public static void main(String[] args) {
B b;
C.func();
b = new B();
System.out.println();
}
}
Вывод будет: CCB
$ iptables -I INPUT -p tcp --dport 5672 -j DROP
$ rabbitmqctl list_connections pid port state user vhost recv_cnt send_cnt send_pend name | awk '{print "rabbitmqctl close_connection \"" $1 "\" \"manually closing idle connection\"" | "/bin/bash" }'
$ rabbitmqadmin -f tsv -q list queues name | while read queue; do rabbitmqadmin -q delete queue name=${queue}; done
iptables -L INPUT -n --line-numbers3.2. Удалить это правило:
iptables -D INPUT [LINE_NUMBER]
sudo mount -t nfs -o resvport,rw 192.168.11.175:/home/data /Volumes/pap_doclib
#!/bin/sh mkdir /Volumes/pap_doclib sudo mount -t nfs -o resvport,rw 192.168.11.175:/home/data /Volumes/pap_doclib
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.coreer.mount_pap_doclib</string>
<key>Disabled</key>
<false/>
<key>UserName</key>
<string>aieremenko</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/scripts/mount_disk.sh</string>
</array>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>RunAtLoad</key>
<true/>
<false/>
</dict>
</plist>
sudo launchctl load /Library/LaunchDaemons/com.coreer.mount_disk.plist
import javax.ws.rs.client.Entity; import javax.ws.rs.core.Application; import javax.ws.rs.core.Form; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import org.glassfish.jersey.server.ResourceConfig; import org.glassfish.jersey.server.spring.SpringLifecycleListener; import org.glassfish.jersey.test.JerseyTest;
public class MyRestResourceTest extends JerseyTest {
@Override
protected Application configure() {
ResourceConfig appConfig = new ResourceConfig(MyRestResource.class);
appConfig.register(SpringLifecycleListener.class);
appConfig.property("contextConfigLocation", "file:src/main/webapp/WEB-INF/spring/root-context.xml");
return appConfig;
}
@Test
........
}
Расширение этого класса позврояет нам пользоваться методом, который дарует возможность запросов на сервер:
public class MyRestResourceTest extends JerseyTest {
........
@Test
public void testSomeGet() throws Exception {
final Response resp = target().path("/somepath")
.request(javax.ws.rs.core.MediaType.APPLICATION_JSON)
.get();
assertThat(resp.getStatus(), is(200));
String someJsonForParsing = response.readEntity(String.class);
...
}
........
}
Ну и чего-нибудь отправим:
public class MyRestResourceTest extends JerseyTest {
........
@Test
public void testSomePost() throws Exception {
Form form = new Form() ;
form.param("param1", "value");
final Response resp = target("path/for/post").request(javax.ws.rs.core.MediaType.APPLICATION_JSON)
.post(Entity.entity(form, "application/x-www-form-urlencoded"));
assertThat(resp.getStatus(), is(200));
String someJsonForParsing = response.readEntity(String.class);
...
}
........
}
http://www.yoursite.com/api/products/1234http://www.yoursite.com/api/customers/0037
xml version="1.0"?>
<account>
<account_number>12345</account_number>
<balance currency="usd">100.00</balance>
<link rel="deposit" href="/account/12345/deposit" />
<link rel="withdraw" href="/account/12345/withdraw" />
<link rel="transfer" href="/account/12345/transfer" />
<link rel="close" href="/account/12345/close" />
</account>
for (StackTraceElement ste : Thread.currentThread().getStackTrace()) {
System.out.println(ste);
}
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date;
...
final LocalDateTime now = LocalDateTime.now();
final Date oldNow = Date.from(
now.atZone(ZoneId.systemDefault()).toInstant()
);